**拉取鏡像**
`docker pull mysql:5.6.40`
**運行主和從容器**
`docker run -p 3307:3306 --name mysql-master -e MYSQL_ROOT_PASSWORD=123456 -d mysql:5.6.40`
`docker run -p 3308:3306 --name mysql-slave -e MYSQL_ROOT_PASSWORD=123456 -d mysql:5.6.40`
**進入主容器**
`docker exec -it mysql-master bash`
vi /etc/mysql/my.cnf
增加以下內容(默認是同步所有庫)
~~~
[mysqld]
server-id = 1
log_bin = master-bin
~~~
`server mysql restart`
~~~
mysql -uroot -p
mysql>grant replication slave on *.* to '用戶名' @'%.%.%.%' identified by '密碼';
server mysql restart
~~~
**進入從容器**
`docker exec -it mysql-slave bash`
`vi /etc/mysql/my.cnf`
增加以下內容
~~~
[mysqld]
server-id = 2
~~~
`server mysql restart`
~~~
mysql -uroot -p
mysql>change master to master_host='主服務器IP地址',master_port=3306,master_user='用戶名',master_password='密碼',master_log_file='master-bin.000001',master_log_pos=120;
mysql>start slave;
mysql>show slave status\G
~~~
成功:
