mysql docker 中配置日志文件挂载到本地目录
一、说明1.docker运行命令如下:(dockerun.sh文件内容) DB_HOME=/home/mysqlDB_CONF_PATH=$DB_HOME/conf:/etc/mysql/conf.dDB_LOG_PATH=$DB_HOME/logs:/var/log/mysqlDB_DATA_PATH=$DB_HOME/data:/var/lib/mysqldocker run...
·
一、说明
1.docker运行命令如下:(dockerun.sh文件内容)
DB_HOME=/home/mysql
DB_CONF_PATH=$DB_HOME/conf:/etc/mysql/conf.d
DB_LOG_PATH=$DB_HOME/logs:/var/log/mysql
DB_DATA_PATH=$DB_HOME/data:/var/lib/mysql
docker run -p 3306:3306 --name mysql -v $DB_CONF_PATH -v $DB_LOG_PATH -v $DB_DATA_PATH -e MYSQL_ROOT_PASSWORD=rootatdb01 -d mysql:5.7.19
2.目录如下:
[root@host /home/mysql]# ls
conf data dockerun logs
3.配置文件/home/mysql/conf/my.cnf内容:(此处的log-error的正确配置应该是容器内的路径)
[root@host /home/mysql/conf]# cat my.cnf
[mysqld]
log-error=/home/mysql/logs/error.log
lower_case_table_names=1
4.现象:docker start mysql,启动后 容器状态处于Exited(1),失败退出。用docker logs mysql 无法显示任何日志。
二、解决:
1、修改挂载到本地的日志目录的权限。chown -R 999:999 /home/mysql/logs
2、my.cnf文件中log-error=映射到容器中的日志目录。
三、容器挂载本地的my.cnf配置文件的正确内容:
[mysqld]
log-error=/var/log/mysql/error.log
#log=/var/log/mysql/mysql.log
slow_query_log =ON
slow_query_log_file=/var/log/mysql/slowquery.log
long_query_time=3
log-queries-not-using-indexes=/var/log/mysql/nouseindex.log
lower_case_table_names=1
更多推荐
已为社区贡献1条内容
所有评论(0)