1、环境准备:
主机名 |
IP |
系统/MySQL版本 |
角色 |
lamp2 |
192.168.4.112 |
CentOS7.4/MySQL5.7 |
Master |
lamp3 |
192.168.4.104 |
CentOS7.4/MySQL5.7 |
Slave |
2、配置主数据库服务lamp2
2.1、配置my.cnf
vi /etc/my.cnf
log-bin=mysql-bin-master #启用二进制日志
server-id=1 #本机数据库ID 标示
binlog-do-db=test #可以被从服务器复制的库, 二进制需要同步的数据库名
binlog-ignore-db=mysql #不可以被从服务器复制的库
2.2、授权
mysql> grant replication slave on *.* to 'repl'@'192.168.4.%' identified by "123456";
2.3、导出的数据库传给从服务器
复制前要保证同步的数据库一致
mysqldump -uroot -p123456 -B test >test.sql #可以导出数据库
3、部署slvae
3.1、导入数据库 test.sql
mysql -uroot -p123456<test.sql
3.2、修改配置文件
vim /etc/my.cnf
server-id = 2 #从服务器ID号,不要和主ID相同 ,如果设置多个从服务器,每个从服务器必须有一个唯一的server-id值,必须与主服务器的以及其它从服务器的不相同。可以认为server-id值类似于IP地址:这些ID值能唯一识别复制服务器群集中的每个服务器实例。
# 重启mysqld
systemctl restart mysqld
3.3、开启主从
mysql>stop slave; #停止slave
mysql> change master to master_host='192.168.4.112',master_user='repl',master_password='123456',master_port=3306,master_log_file='mysql-bin.000001',master_log_pos=1390;
mysql> start slave; #启动slave
mysql> show slave status\G 查看状态
4、mysql 日志时间戳慢8个小时
vi /etc/my.cnf
log_timestamps=SYSTEM