docker 挂载的 mysql.cnf 配置修改 sql_mode重启后不生效
1. 运行环境#
lnmp
1). 当前使用的 Laravel 版本?#
laravel9
//: <> (使用 php artisan --version
命令查看)
2). 当前使用的 php/php-fpm 版本?#
PHP 版本:8.1
php-fpm 版本:8.1
3). 当前系统#
centos 7.9
//: <> (期待数值 Windows 10 / Ubuntu 20.4 / CentOS 8)
4). 业务环境#
5). 相关软件版本#
mysql8
//: <> (提供相关软件的版本,如 Nginx 、MySQL、MongoDB 等)
2. 问题描述?#
docker 挂载的 mysql.cnf 配置修改 sql_mode 重启后不生效
docker-compose.yml 如下
mysql:
image: mysql/mysql-server:${MYSQL_VERSION}
container_name: mysql
ports:
- “${MYSQL_HOST_PORT}:3306”
volumes:
- ${MYSQL_CONF_FILE}:/etc/mysql/conf.d/mysql.cnf:ro
- ${DATA_DIR}/mysql:/var/lib/mysql/:rw
- ${MYSQL_LOG_DIR}:/var/log/mysql/:rw
restart: always
networks:
- default
environment:
MYSQL_ROOT_PASSWORD: "${MYSQL_ROOT_PASSWORD}"
MYSQL_ROOT_HOST: "${MYSQL_ROOT_HOST}"
TZ: "$TZ"
mysql.cnf 配置
[client]
#port = 3307
#default-character-set = utf8mb4
[mysqld]
#user = mysql
#port = 3307
sql_mode = NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION
#default-storage-engine = InnoDB
#default-authentication-plugin = mysql_native_password
#character-set-server = utf8mb4
#collation-server = utf8mb4_unicode_ci
#init_connect = ‘SET NAMES utf8mb4’
#disable-log-bin
#skip-character-set-client-handshake
#explicit_defaults_for_timestamp
#slow_query_log
#long_query_time = 3
#slow-query-log-file = /var/log/mysql/mysql.slow.log
#log-error = /var/log/mysql/mysql.error.log
#default-time-zone = ‘+8:00’
[mysql]
#default-character-set = utf8mb4
推荐文章: