Docker Compose 部署 MySQL 报错,如何解决?-灵析社区

三千米的偷感

使用docker-compose 部署 MySQL 报错 ![image.png](https://wmprod.oss-cn-shanghai.aliyuncs.com/c/user/20240925/cdfa6da3121d7979ad2dcfe2415f4e07.png) ![image.png](https://wmprod.oss-cn-shanghai.aliyuncs.com/c/user/20240925/33721c12d42b1b44b9757bd036d50a51.png) ![image.png](https://wmprod.oss-cn-shanghai.aliyuncs.com/c/user/20240925/558a4ff59a9aa185e9925c3d7fb588b2.png) ![image.png](https://wmprod.oss-cn-shanghai.aliyuncs.com/c/user/20240925/9e1df08ab7fd091072ec8ba53fc34370.png) ![image.png](https://wmprod.oss-cn-shanghai.aliyuncs.com/c/user/20240925/71d8d6e399aee7e829df5e9ee97170d5.png) docker-compose.yml mysql配置部分 mysql: image: mysql container_name: mysql environment: - MYSQL_ROOT_PASSWORD=123456 volumes: - /data/mysql/log:/var/log/mysql - /data/mysql/data:/var/lib/mysql - /data/mysql/conf.d:/etc/mysql/conf.d - /etc/localtime:/etc/localtime:ro ports: - 3306:3306 restart: always my.cnf文件 ###### [client]配置模块 ###### [client] default-character-set=utf8mb4 socket=/var/lib/mysql/mysql.sock ###### [mysql]配置模块 ###### [mysql] # 设置MySQL客户端默认字符集 default-character-set=utf8mb4 socket=/var/lib/mysql/mysql.sock ###### [mysqld]配置模块 ###### [mysqld] port=3306 user=mysql # 设置sql模式 sql_mode模式引起的分组查询出现*this is incompatible with sql_mode=only_full_group_by,这里最好剔除ONLY_FULL_GROUP_BY sql_mode=STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION datadir=/var/lib/mysql socket=/var/lib/mysql/mysql.sock server-id = 1 # MySQL8 的密码认证插件 如果不设置低版本navicat无法连接 default_authentication_plugin=mysql_native_password # 禁用符号链接以防止各种安全风险 symbolic-links=0 # 允许最大连接数 max_connections=1000 # 服务端使用的字符集默认为8比特编码的latin1字符集 character-set-server=utf8mb4 # 创建新表时将使用的默认存储引擎 default-storage-engine=INNODB # 表名存储在磁盘是小写的,但是比较的时候是不区分大小写 –initialize --lower_case_table_names=1 max_allowed_packet=16M # 设置时区 default-time_zone='+8:00'

阅读量:149

点赞量:0

问AI
网上给出的解决方案不适用我本地出现的问题,我本地问题的原因是由于依赖版本不一致。 "参考连接" (https://link.segmentfault.com/?enc=WqC4sB20hvGRFBfNlOHNpA%3D%3D.Q8Q%2B8K%2FP3Js3FbG9bQkmOJNXnoRbrKy8%2FRdqsxR6QVvrSOnDKjis0uLpX1yRAdd8HCtmPSD4Iq02p0auhG75O6vxbbpgPKwlD9wM1%2FJWSl3ucr%2FKdAjXv90i96jHtp1O) 解决思路: 先是在线指定安装(yum安装)docker18.09.8版本 "在线指定安装docker18.09.8版本" (https://wmprod.oss-cn-shanghai.aliyuncs.com/c/user/20240925/9c6a15639eddf5bfaaa56d6932c809c4.png) 查看该docker版本所依赖的版本 "查看该docker版本所依赖的版本" (https://wmprod.oss-cn-shanghai.aliyuncs.com/c/user/20240925/e500853859915c7d87cd811aa20efa1c.png) "下载对应离线包" (https://wmprod.oss-cn-shanghai.aliyuncs.com/c/user/20240925/74f7dd6d30c1da81783ab5a59a049b34.png) 然后rpm安装docker18.09.8及其对应依赖包,再用docker-compose部署MySQL成功启动没有问题!