1、首先拉取官方鏡像mysql5.7版本
docker pull mysql:5.7
2、運行mysql,執行以下命令
docker run -d --ulimit nofile=65536:65536 --name mysql5.7 -v /home/mysql:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=root -p 3306:3306 a1aa4f76fab9
以下是命令解釋:
d : --detach,后台運行。
--ulimit:解除Docker最大連接數限制
--name : 為你的鏡像創建一個別名,該別名用於更好操作。
-p : 映射端口,一般我們會將默認端口進行更改,避免與本機的mysql端口沖突,如果你宿主機有mysql,請更改端口,如 -p 33060:3306。
-e : 環境變量。為mysql的root用戶設置密碼為root。
-v : 指定數據卷,意思就是將mysql容器中的/home/mysql(這個是數據庫所有數據信息文件)映射到宿主機/home/mysql里面。如果我們將mysql鏡像刪除了,重新安裝,那么只需要指定數據卷就可以進行數據還原了
安裝成功后會有大小寫區分及時差問題,需要進行如下步驟的調整
步驟一:安裝vim
yum install vim
步驟二:進入mysql容器
docker exec -it 容器名稱 bash
步驟三:
apt-get update
apt-get install -y vim
步驟四:進入docker的MySQL容器,編輯/etc/mysql/mysql.conf.d/mysqld.cnf文件
vim /etc/mysql/mysql.conf.d/mysqld.cnf
步驟五:在[mysqld]下添加如下:並進行保存退出,esc鍵加:wq
lower_case_table_names=1
default-time_zone='+8:00'
步驟六:退出容器
exit
步驟六:重啟mysql容器
docker restart mysql5.7
參考博客:https://www.cnblogs.com/nihaorz/p/10255932.html
https://www.cnblogs.com/mafeng/p/6768916.html
https://blog.csdn.net/weixin_43569697/article/details/90649130
https://www.cnblogs.com/bingle/p/9785621.html
https://blog.csdn.net/qq_28018283/article/details/80109290
mysql數據卷分離參考:https://www.jianshu.com/p/57420240e877
解除連接數過多問題參考:https://blog.csdn.net/weixin_39835887/article/details/86071545