赞
踩
1、下载安装数据库
docker pull mysql:5.7
2、启动数据库 192.168.230.11 主 192.168.230.12 从
docker run --restart=always -v /data/mysql/conf:/etc/mysql/conf.d -v /data/mysql/log:/var/log/mysql -v /data/mysql/data:/var/lib/mysql -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 --name mysql5.7 -d mysql:5.7
3、master(主服务器)的配置 配置/data/mysql/conf/my.cnf 开启log_bin 重启
- [mysqld]
- log-bin=mysql-bin
- server-id=1
3.5然后创建用于从服务器连接的用户,并为其分配复制权限:
- CREATE USER 'repadmin'@'%' IDENTIFIED BY 'password';
- GRANT REPLICATION SLAVE ON *.* TO 'repadmin'@'%';
主账号:repadmin 123456
4、检查是否正常
SHOW MASTER STATUS; 记录状态后面需要使用
从服务器数据库配置
1、salve 的配置 配置/data/mysql/conf/my.cnf 开启log_bin 重启
- [mysqld]
- log-bin=mysql-bin
- server-id=2
2、然后连接到主服务器,并执行以下命令,将从服务器的MySQL实例设置成主服务器的从服务器:
- CHANGE MASTER TO
- MASTER_HOST='192.168.230.11',
- MASTER_USER='repadmin',
- MASTER_PASSWORD='123456',
- MASTER_LOG_FILE='mysql-bin.000002',
- MASTER_LOG_POS=1614;
注意将其中的主服务器名称、记录的日志文件名和位置分别替换成前面第三步中SHOW MASTER STATUS命令输出的对应值。如图:
3、开始复制 在从服务器上执行以下命令,开始从主服务器复制数据:
START SLAVE;
4、执行完毕后可以通过以下命令查看从服务器复制状态:
SHOW SLAVE STATUS\G 或SHOW SLAVE STATUS
如果MySQL实例正常,应该能够看到Slave_IO_Running和Slave_SQL_Running两个值都为"yes"。
5、如果你在从库写内容会造成Slave_SQL_Running状态为no
处理办法:
关闭主从连接:stop slave;
重新连接到主数据库:
CHANGE MASTER TO
MASTER_HOST='192.168.230.11',
MASTER_USER='repadmin',
MASTER_PASSWORD='123456',
MASTER_LOG_FILE='mysql-bin.000002',
MASTER_LOG_POS=716;
6、注意 :搭建好在创建数据库,不然好像会有问题,会有数据库找不到 或不存在等问题。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。