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