准备两台,或者在一台上开两个docker创建的mysql。请先自先安装docker。操作系统linux。
1、下载mysql
docker pull mysql:5.7
2、创建挂载文件(这些文件是常用的mysql配置)
mkdir -vp /root/mysql/data /root/mysql/logs /root/mysql/conf
3、挂载文件
docker run -p 3306:3306 --name mysql -v /root/mysql/conf:/etc/mysql/conf.d -v /root/mysql/logs:/logs -v /root/mysql/data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=root -d mysql:5.7
4、在 /root/mysql 下创建my.cnf文件 配置 log_bin=mysql-bin 文件名 server_id =173 这个ID在集群里是唯一的
[mysqld]
log_bin=mysql-bin
server_id =173
5、同上(从1~3再配置一台主机) 第二台的my.cnf文件如下 binlog_do_db=test 同步的数据库,多个用,号隔开
[mysqld]
log_bin=mysql-bin
binlog_do_db=test
server_id =26
6、重启两个mysql
docker restart mysql
7、连接主(master)mysql查看状态 mysql-bin.000001是文件名 126是启始行数(后面需要用到)
show variables like '%server_id%';//查看server_id是否修改
show master status;//查看master状态
8、在备mysql运行命令
change master to master_host='127.100.100.100',master_user='root',master_password='root',
master_log_file='mysql-bin.000001',master_log_pos=154;
start slave;
9、查看是否正常show slave status,两个Yes代表正常
10、在主mysql创建test库,建表可以在备库中看到了。简单吧?!