一切福田,不離方寸,從心而覓,感無不通。

Category Archives: Database

MySQL:SELECT list is not in GROUP BY clause 报错 解决方案

首先执行以下查询:
不出所料就是有一个ONLY_FULL_GROUP_BY
SELECT @@sql_mode;
ONLY_FULL_GROUP_BY,STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION

所以我去到配置文件中,在 mysqld 下配置一下 sql_mode,把 ONLY_FULL_GROUP_BY 去掉
# 添加的行如下
sql_model=STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION

龙生   23 Nov 2024
View Details

Mac上几款免费的MySql客户端

1、Sequel Pro
2、DBeaver Community
3、MySql WorkBench Community

龙生   16 Nov 2024
View Details

使用Docker安装MySQL

docker pull mysql:5.7
sudo docker run -p 3306:3306 --name mysql -e MYSQL_ROOT_PASSWORD=123456 -d mysql:5.7

龙生   06 Nov 2024
View Details

PostgreSQL LIKE 子句

在 PostgreSQL 数据库中,我们如果要获取包含某些字符的数据,可以使用 LIKE 子句。 在 LIKE 子句中,通常与通配符结合使用,通配符表示任意字符,在 PostgreSQL 中,主要有以下两种通配符: 百分号 % 下划线 _ 如果没有使用以上两种通配符,LIKE 子句和等号 = 得到的结果是一样的。 语法 以下是使用 LIKE 子句搭配百分号 % 和下划线 _ 从数据库中获取数据的通用语法:

  你可以在 WHERE 子句中指定任何条件。 你可以使用 AND 或者 OR 指定一个或多个条件。 XXXX 可以是任何数字或者字符。 实例 下面是 LIKE 语句中演示了 % 和 _ 的一些差别: 实例 描述 WHERE SALARY::text LIKE '200%' 找出 SALARY 字段中以 200 开头的数据。 WHERE SALARY::text LIKE '%200%' 找出 SALARY 字段中含有 200 字符的数据。 WHERE SALARY::text LIKE '_00%' 找出 SALARY 字段中在第二和第三个位置上有 00 的数据。 WHERE SALARY::text LIKE '2_%_%' 找出 SALARY 字段中以 2 开头的字符长度大于 3 的数据。 WHERE SALARY::text LIKE '%2' 找出 SALARY 字段中以 2 结尾的数据 WHERE SALARY::text LIKE '_2%3' 找出 SALARY 字段中 2 […]

龙生   16 May 2024
View Details

Docker下部署PostgreSQL

docker run -d --name=postgres -p 5432:5432 -v postgres-volume:/var/lib/postgresql/data -e POSTGRES_PASSWORD=Aa615243 postgres docker run -d --name=pgadmin4 -e SERVER_MODE=true -e PGADMIN_DEFAULT_EMAIL=your_email -e PGADMIN_DEFAULT_PASSWORD=Aa615243 -d -p 15432:80 -v postgres-volume:/var/lib/postgresql/data dpage/pgadmin4:latest

龙生   15 May 2024
View Details

借助 docker 安装 pgAdmin

  安装 docker 和 nginx 这个看文档即可。 引入现成的 pgadmin 的 docker镜像

  运行该镜像: docker run -e SERVER_MODE=true -e PGADMIN_SETUP_EMAIL=berrydigital@gmail.com \ -e PGADMIN_SETUP_PASSWORD=password -d -p 5050:5050 \ -v /home/robert/data:/data chorss/docker-pgadmin4 -e 表示传入容器的环境变量,PGADMIN_SETUP_EMAIL 和 PGADMIN_SETUP_PASSWORD 分别为 pgAdmin 登陆的账号密码。 -V /home/robert/data:/data 表示宿主机目录和容器目录对应的映射关系,宿主机目录可以自己设置。运行时可能会因为目录权限报错,需要修改目录权限(本地开发直接改成 777 )。 nginx 配置

  主要是将请求反向代理到 docker 容器内。 postgresql 配置 默认是 5432 端口,只有本机可以访问,需要修改访问权限:把 postgresql.conf 中的 listen_addresses 的值 设置为 *,表示所有 ip 会被响应。 还需要修改 pg_hba.conf,用于设置连接的许可,添加: host all all 0.0.0.0/0 md5 表示所有用户及 ip 都可以建立连接,密码加密方式为 md5. 重启 postgresql:sudo service postgresql restart 此时可以通过 YOUR_SERVER_NAME 登陆 pgAdmin 了。 虚拟机ip 进入 pgAdmin 后需要设置 postgresql […]

龙生   15 May 2024
View Details

在 Docker 中运行 PostgreSQL

本教程将指导您完成如何在 Docker 容器内运行具有持久存储的 PostgreSQL 并连接到它的过程。 PostgreSQL是一个开源的对象关系数据库管理系统。它已经存在了 30 多年,并标榜自己是“世界上最先进的开源关系数据库”。 在轻松打包、部署和运行分布式应用程序方面,Docker已成为 IT 行业的标准。Docker 容器让您可以快速启动新应用程序,而不会因依赖项而使您的系统变得混乱。 您可以使用 Docker 在容器中运行 PostgreSQL 数据库,就像它是远程服务器一样。Docker 容器基于开放标准,使容器能够在所有主要Linux 发行版、MacOS 和 Microsoft Windows 上运行。   在 Docker 中运行 PostgreSQL 我们在这里要做的是下载PostgreSQL镜像,检查镜像是否准备好,使用特定参数运行镜像,最后连接到正在运行的PostgreSQL实例。 1. 拉取一个 PostgreSQL 服务器 Docker 镜像 首先,我们需要从Docker Hub获取现有的 PostgreSQL 官方镜像。镜像适用于 PostgreSQL 版本 9、10、11、12 和 13。如果您需要特定版本,latest 请将标签更改 为所需版本。 现在让我们拉取图像:

  使用上述命令将从 Docker Hub 存储库中提取最新可用版本的 PostgreSQL。 2. 从 PostgreSQL 服务器 Docker 镜像运行容器 在部署之前,您需要设置一个 Docker 卷或绑定安装来持久化您的数据库。否则,当容器重新启动时,您的数据将丢失。安装应该 /var/lib/postgresql/data 在容器内的目录中。 出于本指南的目的,我们将创建一个 docker 卷并将其附加到您的 PostgreSQL 容器。 以下命令将在您的本地计算机中创建卷,您可以稍后与 PostgreSQL 容器连接:

  现在你的机器上有 PostgreSQL 镜像和一个用于保存数据的卷,你可以部署一个容器:

  该 docker run 命令将在 Docker 容器中创建一个正在运行的 PostgreSQL 数据库。 让我们分解一下这个语法。以下是该命令中每个参数的含义: -d 将以分离模式运行此容器,以便它在后台运行。 --name 将名称“postgres13”分配给您的容器实例。 -p会将 PostgreSQL 容器端口 […]

龙生   15 May 2024
View Details

PostgreSQL 数据类型

PostgreSQL提 供了丰富的数据类型。用户可以使用 CREATE TYPE 命令在数据库中创建新的数据类型。PostgreSQL 的数据类型有很多种,下面我们具体来说明。

龙生   15 May 2024
View Details

一文详细讲解如何查看mysql里面的锁

锁是MySQL里面最难理解的知识,但是又无处不在,下面这篇文章主要给大家介绍了关于关于如何查看mysql里面锁的相关资料,文中通过代码介绍的非常详细,需要的朋友可以参考下

龙生   13 May 2024
View Details

mysql查询12小时内的数据

NOW()函数:返回当前日期和时间。
DATE_SUB(date, INTERVAL expr unit)函数:从给定的日期或时间中减去指定的时间间隔。
DATE_ADD(date, INTERVAL expr unit)函数:在给定的日期或时间上添加指定的时间间隔。
DATE_FORMAT(date, format)函数:将日期或时间格式化为指定的字符串格式。

龙生   27 Oct 2023
View Details
1 2 40