本文主要是介绍docker-compose 启动mysql时配置不生效,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
现象:
docker-compose 启动mysql时,mysql正常启动,但是配置文件不能生效。
docker-compose配置文件如下:
version: '3'
services:mysql:restart: alwaysimage: mysql:5.7container_name: mysqlvolumes:
# - ./mydir:/mydir- ./datadir/:/var/lib/mysql/- ./conf/my.cnf:/etc/my.cnfenvironment:- "MYSQL_ROOT_PASSWORD=123456"
# - "MYSQL_DATABASE=mydb"- "TZ=Asia/Shanghai"ports:- 3306:3306
mysql 配置文件:
[client]port = 3306socket=/var/lib/mysql/mysql.sock
[mysqld]datadir=/var/lib/mysqlmax_allowed_packet = 256Mcharacter_set_server= utf8max_binlog_size=512Mmax_connect_errors =102400max_connections = 4096max_user_connections = 3072socket=/var/lib/mysql/mysql.socklog-error=/var/log/mysql/mysqld.loglower_case_table_names=1
[mysqldump]max_allowed_packet = 128M
[mysql]no-auto-rehashprompt = \\u@\\d \\r:\\m:\\s>
[myisamchk]key_buffer_size = 32Msort_buffer_size = 32Mread_buffer = 8Mwrite_buffer = 8M
[mysqlhotcopy]interactive-timeout
问题根因:
进入容器登陆mysql,发现如下提示。才发现是因为配置文件权限太大的原因。mysql自动忽略了配置建。
问题解决:
修改配置文件的权限,重启docker-compose 即可。
chmod 644./conf/my.cnf
问题总结:
遇到问题,需要多看输出信息。就能发现问题的端倪。
这篇关于docker-compose 启动mysql时配置不生效的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!