文章目录
- 背景
- 常用基础命令
- [d o c k e r中操作m y s q l](#d o c k e r中操作m y s q l)
-
- 访问mysql
-
- 关闭强校验
- 查看sql_mode
- [去掉ONLY_FULL_GROUP_BY 模式](#去掉ONLY_FULL_GROUP_BY 模式)
- 重启mysql服务
背景
公司使用d o c k e r,部署得的mysql今天遇到了一个问题,group by查询语句报错,因为mysql中使用了sql_mode包含了ONLY_FULL_GROUP_BY,所以导致报错,报错了就得解决啊。所以又要使用这个该死的d o c k e r
顺带着先将一部分常用的基础命令吧。
常用基础命令
查看容 器 的命令
docker ps -a

删除一个容器
注意:这个动作千万别轻易用,这个很容易造成删库,接下来就是跑路了
docker rm mysql
注意:此处的mysql对应的是上图中的name列
查看所有镜像
docker images

docker image ls -a

查看运行的镜像
docker ps

创建容 器
docker run --name mysql -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 -d mysql:latest
- docker run :用于创建并运行新的容器
- --name mysql-container:指定容器的名称为 mysql-container 。(可以根据需要修改)
- -e MYSQL ROOT PASSWORD=root :设置 MySQL的根用户密码为 root
- -d:让容器在后台运行
- mysql:latest :指定使用 MySQL 的最新版本。
重启 容 器
docker restart mysql
注意:这里mysql是容器名字
停止运行
docker stop 容器名字
运行容 器
docker start 容器名字
d o c k e r中操作m y s q l
默认到这里,我们已经运行了mysql的服务
访问mysql
通过docker exec 命令可以访问到正字啊运行的m y s q l容器
docker exec -it mysql mysql -uroot -p123456
- docker exec :在运行的容器中执行命令,
- -it :让我们进入交互式终端。
- mysql -uroot -proot :使用 root 用户和密码进入 MySQL 数据库。
关闭强校验
修改m y s q l配置,用来关闭 ONLY_FULL_GROUP_BY模式
查看sql_mode
select @@sql_mode;
去掉ONLY_FULL_GROUP_BY 模式
set global sql_mode=(select replace(@@sql_mode,'ONLY_FULL_GROUP_BY',''));
这一条命令,会关闭全局的ONLY_FULL_GROUP_BY。将他移除
重启mysql服务
退出
exit;
docker中重启mysql
docker restart mysql
今天内容更新到这里,意犹未尽这,可以点击下方卡片关注《coder练习生》