Docker安裝MySQL5.7


docker pull mysql:5.7

拉取MySQL5.7鏡像

 

 

docker images

查看本地的鏡像

 

 

docker run --name mysql5.7 -e MYSQL_ROOT_PASSWORD=Abcdef@123456 -d mysql:5.7
先讓容器在后台運行,並取個別名為mysql5.7,此時還沒有修改配置文件

 

 

docker ps

查看正在運行的容器

 

 

docker exec mysql5.7 ls /etc/mysql

查看容器內部的配置文件

 

 

docker exec -it mysql5.7 /bin/bash

進入容器終端

mysql -uroot -p

進入mysql終端,並輸入密碼

grant all privileges on *.* to root@'%' identified by 'Abcdef@123456';

賦予root賬號遠程訪問權限

flush privileges;

刷新權限

quit;

退出mysql終端

exit

退出容器終端

 

mkdir -p /root/mysql5.7/conf

在宿主機創建配置文件目錄

docker cp -a mysql5.7:/etc/mysql/ /root/mysql5.7/conf

復制容器內部的配置文件到宿主機

mkdir /root/mysql5.7/data

在宿主機創建數據目錄

chmod -R 777 /root/mysql5.7

賦予宿主機/root/mysql5.7目錄最高讀寫權限

 

docker rm -f mysql5.7

刪除mysql5.7容器,-f參數是強制刪除運行中的容器

 

 

docker run --restart=always -p 3306:3306 --name mysql5.7 -v /root/mysql5.7/conf:/etc/mysql -v /root/mysql5.7/data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=Abcdef@123456 -d mysql:5.7 --character-set-server=utf8mb4 --collation-server=utf8mb4_unicode_ci

重新運行容器,映射端口,並掛載配置文件、數據文件,設置賬號密碼,並設置編碼方式為UTF-8

 

 

firewall-cmd --zone=public --add-port=3306/tcp --permanent

firewall-cmd --reload

開放宿主機防火牆3306端口

 

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM