Docker運行mysql


1、 拉取mysql5.7鏡像

docker pull mysql:5.7

2、 創建用於掛載的目錄(日志目錄、數據目錄、配置目錄)

 

3、 在conf目錄下創建my.cnf配置文件

my.cnf內容如下:

[mysqld]

user=mysql

character-set-server=utf8mb4

default_authentication_plugin=mysql_native_password

secure_file_priv=/var/lib/mysql

expire_logs_days=7

sql_mode=STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION

max_connections=1000

skip-name-resolve



[client]

default-character-set=utf8mb4



[mysql]

default-character-set=utf8mb4

  

4、 使用docker命令創建容器

docker run --restart=always --network=mybridge --ip 172.18.18.100 -p 13306:3306 --name mysql-server-1 -v E:\docker\mysql\conf:/etc/mysql  -v E:\docker\mysql\logs:/var/log/mysql -v E:\docker\mysql\data:/var/lib/mysql -v E:\docker\mysql\conf\my.cnf:/etc/mysql/my.cnf  --privileged=true -e MYSQL_ROOT_PASSWORD=root -d mysql:5.7

 

命令參數解釋:

--restart=always,當docker重啟時,容器也重啟

--name,容器命名

--network=mybridge,指定網絡

--ip,指定固定ip

-p 3306:3306,宿主機和容器端口映射

-v(此命令中有三個-v參數) 掛載數據等內容,避免容器重啟造成的數據丟失

--privileged 權限配置,一般和-v配合使用

-e 設置環境變量(此處設置了mysql的密碼)

-d 后台啟動(容器不會因為shell的退出而停止運行)

 

5、連接mysql

5.1 在命令行連接

進入mysql容器(可以使用名稱或容器ID進入):docker exec -it mysql-server-1 /bin/bash

連接mysql服務器:mysql -uroot -proot

列出數據庫:show databases;

5.2 使用Navicat遠程連接

點擊連接,選擇mysql,輸入ip地址與用戶名密碼,端口由於直接使用的宿主機的13306映射的mysql容器內的3306端口,因此直接寫13306即可,寫完后點擊測試鏈接,顯示連接成功即OK。

 


免責聲明!

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



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