Docker搭建MySQL並掛載數據的全過程

記錄 Docker 搭建 MySQL 並掛載數據過程,搭建過程參考自 Docker Hub 。

一、Docker搭建MySQL並掛載數據

1、首先安裝好 Docker,不知道怎麼安裝的可以看下 CentOS7安裝Docker初體驗 。

2、下載 MySQL5.7 鏡像。

docker pull mysql:5.7

3、創建容器並掛載數據。

docker run -d --restart=always --name mysql \
-v /itwxe/dockerData/mysql/data:/var/lib/mysql \
-v /itwxe/dockerData/mysql/conf:/etc/mysql \
-v /itwxe/dockerData/mysql/log:/var/log/mysql \
-p 3306:3306 \
-e TZ=Asia/Shanghai \
-e MYSQL_ROOT_PASSWORD=123456 \
mysql:5.7 \
--character-set-server=utf8mb4 \
--collation-server=utf8mb4_general_ci

參數說明:

-v /itwxe/dockerData/mysql/data:/var/lib/mysql:將數據文件夾掛載到主機
-v /itwxe/dockerData/mysql/conf:/etc/mysql:將配置文件夾掛在到主機,可以在宿主機放一份自定義 my.cnf文件,那麼容器就會按自定義配置啟動
-v /itwxe/dockerData/mysql/log:/var/log/mysql:將日志文件夾掛載到主機
-p 3306:3306:將容器的3306端口映射到主機的3306端口
-e MYSQL_ROOT_PASSWORD=123456:初始化123456用戶的密碼
--character-set-server=utf8mb4:設置字符集
--collation-server=utf8mb4_general_ci:排序方式

4、進入 MySQL 容器內部。

docker exec -it mysql /bin/bash

5、登錄 MySQL。

mysql -uroot -p123456

6、查看字符集是否生效。

show variables like 'character_set_%';

二、掛載是否生效

1、上傳備份 sql 到宿主機,復制宿主機備份 sql 到容器。

docker cp /itwxe/dockerData/sunny.sql mysql:/

2、進入 mysql 容器內部,導入sql。

docker exec -it mysql /bin/bash

mysql -uroot -p123456

create database sunny;
use sunny;
source /sunny.sql;

3、數據導入成功可以查詢後,刪除容器,並重新用命令創建容器,查看數據存在。

docker stop mysql && docker rm mysql

使用上面的命令重新創建容器,查看數據是否正常,可以看到數據正常掛載查詢,此處演示的數據正常掛載保存宿主機。

其他

1.可以啟動多個MySQL服務,因為我們啟動的是容器,容器可以有多個,隻要容器名字映射段端口不一樣就可以瞭,例如:

$ sudo docker run --name dbdb -e MYSQL_ROOT_PASSWORD=123456 -p 6666:3306 -d mysql

2.查看所有容器(啟動狀態或者關閉狀態)

$ sudo docker ps -a

3.啟動和關閉容器

啟動命令:

$ sudo docker start pwc-mysql   //通過指定容器名字
$ sudo docker start 73f8811f669e  //通過指定容器ID

關閉命令:

$ sudo docker stop pwc-mysql   //通過指定容器名字
$ sudo docker stop 73f8811f669e  //通過指定容器ID

總結 

到此這篇關於Docker搭建MySQL並掛載數據的文章就介紹到這瞭,更多相關Docker搭建MySQL掛載數據內容請搜索WalkonNet以前的文章或繼續瀏覽下面的相關文章希望大傢以後多多支持WalkonNet!

推薦閱讀: