主从复制实验环境:
Db01 (10.0.0.51) 主库 server_id=1
Db02 (10.0.0.52) 从库 server_id=2
Db03 (10.0.0.53) 从库 server_id=3
三台服务器都开启binlog日志并添加server_id
[root@db01 ~]# vim /etc/my.cnf
[root@db01 ~]# systemctl restart mysqld.service #重启服务,让配置文件生效
Db02,db03开启binlog日志同上
主从前提:主从数据库的数据需一致
[root@db01 ~]# mysqldump -uroot -p123 -A >/tmp/mysql.sql
[root@db01 ~]# scp /tmp/mysql.sql 172.16.1.52:/tmp
[root@db01 ~]# mysql -uroot -p123
mysql> show master status;
+——————+———-+————–+——————+——————-+
| File | Position | Binlog_Do_DB | Binlog_Ignore_DB | Executed_Gtid_Set |
+——————+———-+————–+——————+——————-+
| mysql-bin.000004 | 1180 | | | |
+——————+———-+————–+——————+——————-+
1 row in set (0.00 sec)
##创建slave用户 (三台服务器都创建slave用户)
Db02,和db03上的操作
[root@db02 ~]# mysql -uroot -p123
mysql> source /tmp/mysql.sql; #导入db01上的数据库的数据
mysql> change master to
master_host='10.0.0.51',
master_user='slave',
master_password='123',
master_log_file='mysql-bin.000004',
master_log_pos=1180;
mysql> start slave; #开启从库
mysql> show slave statusG; #查看从库状态