#############################################################html
##################### run mysql########################mysql
############################################################sql
1-一、docker rundocker
docker search mysql5.7;bash
docker run --name master -e MYSQL_ROOT_PASSWORD=123456 -p 13306:3306 -d 鏡像ID;spa
docker run --name slave -e MYSQL_ROOT_PASSWORD=123456 -p 23306:3306 -d 鏡像ID;rest
--name 容器命名
-e MYSQL_ROOT_PASSWORD=123456 配置mysql的root用戶的登錄密碼
-p:端口映射,此處映射主機13306端口到容器master的3306端口
-d:成功啓動容器後輸出容器的完整IDserver
#############################################################htm
#####################master#################################blog
#############################################################
獲取root權限,進入的CONTAINER name:master
docker exec -ti -u root master bash
2-1 ifconifg 172.17.0.2
2-二、修改/ect/my.cnf**********************
--my.cnf增長下面兩行
server_id=100
log-bin=mysql-bin
重啓容器:docker restart master
2-三、進入mysql命令**********************
mysql -u root 以下mysql命令
mysql->
2-四、//執行下面命令進行複製受權**********************
mysql-> CREATE USER 'slave'@'%' IDENTIFIED BY '12345678';
mysql-> GRANT REPLICATION SLAVE, REPLICATION CLIENT ON *.* TO 'slave'@'%';
2-五、//檢查命令********************************************
mysql-> show master status;
以下:
| File | Position | Binlog_Do_DB | Binlog_Ignore_DB | Executed_Gtid_Set |
+------------------+----------+--------------+------------------+-------------------+
| mysql-bin.000002 | 617 | | | |
+------------------+----------+--------------+------------------+-------------------+
1 row in set (0.01 sec)
#############################################################
#####################slave#################################
#############################################################
docker exec -ti -u root slave bash
3-1 ifconifg 172.17.0.3
3-二、修改/ect/my.cnf**********************
--my.cnf增長下面兩行
server_id=101
log-bin=mysql-bin
重啓容器:docker restart slave
3-三、重啓容器進入容器再進入mysql命令**********************
mysql -u root 以下mysql命令
mysql->change master to master_host='172.17.0.2', master_user='slave', master_password='12345678',
master_port=3306, master_log_file='mysql-bin.000002', master_log_pos=617, master_connect_retry=30;
#master_host='172.17.0.2' 參考 2-1
#master_user='slave', master_password='12345678' 參考 2-4
#master_log_file='mysql-bin.000002', master_log_pos=617 參考 2-5
重啓容器:docker restart slave
3-四、//查看主從同步狀態
show slave status \G;
Slave_IO_Running: Yes 和 Slave_SQL_Running: Yes 代表配置成功
配置 master_log_file='mysql-bin.000002', master_log_pos=617,
兩個參數要注意 和 show master status 輸出的值保致
##############################################
參考:http://www.javashuo.com/article/p-mjtvksqs-gb.html
docker exec -ti -u root slave bash 加參數-u root 能夠直接進入容器slave的以root用戶登陸