1. 程式人生 > >docker安裝配置mysql5.6.41

docker安裝配置mysql5.6.41

1,docker下載與安裝:
https://mp.csdn.net/postedit/81356403

2,mysql映象選擇:
https://hub.docker.com/explore/ 中查詢具體要安裝的版本。

3,映象下載
docker pull mysql:5.6.41

4,啟動一個例項
docker run --name some-mysql -e MYSQL_ROOT_PASSWORD=123456 -d mysql:5.6.41 #啟動一個指定root密碼的例項

5,其他容器連線到mysql容器例項
docker run --name some-app --link some-mysql:mysql -d application-that-uses-mysql    #some-mysql:要連線的mysql容器的名稱。mysql:連線的別名。

6,mysql容器作為客戶端連線到容器或其他例項:
連線容器:
$ docker run -it --link some-mysql:mysql --rm mysql:5.6.41 sh -c 'exec mysql -h"172.17.0.9" -P"3306" -uroot -p"123456"'    #檢視容器ip方法:docker inspect some-mysql |grep '"IPAddress"'
連線其他例項:
docker run -it --rm mysql:5.6.41 mysql -h127.0.0.1 -uroot -p

7,在容器內執行shell和檢視容器日誌
$ docker exec -it some-mysql bash
$ docker logs some-mysql

8,預設配置檔案位置:
/etc/mysql/my.cnf

指定本地配置檔案:
docker run --name some-mysql -v /my/custom:/etc/mysql/conf.d -e MYSQL_ROOT_PASSWORD=my-secret-pw -d mysql:tag    #注意,掛載的是配置檔案所在資料夾路徑

9,檢視mysql可以指定的引數:
docker run -it --rm mysql:tag --verbose --help    #如:-e MYSQL_ROOT_PASSWORD=my-secret-pw 的引數

10,指定資料檔案目錄:
$ docker run --name some-mysql -v /my/own/datadir:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=my-secret-pw -d mysql:tag

11,如果資料庫目錄已經存在檔案,則$MYSQL_ROOT_PASSWORD引數無效,就是說不會反覆設定root密碼。

12,資料備份,命令可用,但更復雜,推薦同容器執行:
$ docker exec some-mysql sh -c 'exec mysqldump --all-databases -uroot -p"$MYSQL_ROOT_PASSWORD"' > /some/path/on/your/host/all-databases.sql