mysql安装步骤(4)双机互为主从同步数据

一、准备

编号 MySQL路径 IP:端口
1号MySQL /home/sun_zeming/mysql/mysql-1 192.168.100.6:3301
2号MySQL /home/sun_zeming/mysql/mysql-2 192.168.100.6:3302

二、编辑配置文件

编辑1号MySQL配置文件

1
vi my.cnf

编辑 mysqld 下的参数,其中server_id 为MySQL的自定义ID,要保证每个MySQL的ID不重复;binlog-do-db为需要同步的database(如不存在,需预先创建)

1
2
3
4
[mysqld]
log_bin=/home/sun_zeming/mysql/mysql-1/log/mysql.log
server_id = 1
binlog-do-db=tbcms

编辑2号MySQL配置文件

1
2
3
4
[mysqld]
log_bin=/home/sun_zeming/mysql/mysql-2/log/mysql.log
server_id = 2
binlog-do-db=tbcms

重启1号MySQL、2号MySQL

三、设置主从关系

因为两个MySQL互为主从关系,所以两者均需要设置同步
两个MySQL分别进入MySQL命令模式:
锁定数据库

1
2
mysql> flush tables with read lock;
mysql> show master status;

1号MySQL:

2号MySQL:

保证执行这两条命令的控制台不要退出,再各自重新打开MySQL控制台,输入以下命令。
其中,master_log_file为控制台的File,master_log_pos为控制台的Postion。

==!!!!其中,1号MySQL输入命令的参数为2号MySQL控制台显示的参数;2号MySQL输入命令的参数为1号MySQL控制台显示的参数。==

1号MySQL输入命令

1
2
mysql> change master to master_host = '192.168.100.6', master_port = 3302, master_user = 'root',
master_password = '123456', master_log_file = 'mysql.000004', master_log_pos = 120;

2号MySQL输入命令

1
2
mysql> change master to master_host = '192.168.100.6', master_port = 3301, master_user = 'root', 
master_password = '123456', master_log_file = 'mysql.000007', master_log_pos = 217;

两个控制台分别开启同步,并解锁

1
2
mysql> start slave;
mysql> unlock tables;

4、测试

在某一个MySQL的tbcms数据库中增删改数据,另一个MySQL的tbcms数据库数据会自动同步。