-
得到mysql的配置文件
docker run -d -p 3306:3306 -e MYSQL_ROOT_PASSWORD=root mysql:5.7 ## 運行出一個MySQL容器 docker cp MySQL容器ID:/etc/mysql/my.conf . ## 拷貝mysql的配置文件my.cnf到當前目錄
-
修改MySQL配置文件
在上一步得到的my.cnf文件中(或者直接在當前目錄創建一個my.cnf,進行編輯),增加lower_case_table_names=1, 如下:
[mysqld] ##################基礎設置################## pid-file = /var/run/mysqld/mysqld.pid socket = /var/run/mysqld/mysqld.sock datadir = /var/lib/mysql #log-error = /var/log/mysql/error.log sql_mode=STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION default-time-zone='+08:00' #數據庫默認字符集 character-set-server = utf8mb4 #數據庫字符集對應一些排序等規則,注意要和character-set-server對應 collation-server = utf8mb4_general_ci #設置client連接mysql時的字符集,防止亂碼 init_connect=‘SET NAMES utf8mb4‘ #是否對sql語句大小寫敏感,1表示不敏感 lower_case_table_names = 1
-
編寫Dockerfile持久化MySQL配置文件
FROM mysql:5.7 COPY my.cnf /etc/mysql/ EXPOSE 3306 CMD ["mysqld"]
-
根據dockerfile編譯新鏡像
docker build -t mysqlplus:5.7 --no-cache=true -f Dockerfile .