master数据为1,3,5… slave 数据为2,4,6… 这样相互复制的时候数据就不会冲突
1.master配置 my.cnf (注意my.cnf最好是vim新建,不要上传,可能有权限问题不被加载)
server-id=103310
log-bin=mysql-bin #开启复制功能
auto_increment_increment=2 #ID步长为2
auto_increment_offset=1 #表示自增长字段从哪个数开始
lower_case_table_names=1
#要同步的mstest数据库,要同步多个数据库
#binlog-do-db=mstest
#binlog-ignore-db=mysql //要忽略的数据库
2.slave配置 my.cnf
server-id=113310
log-bin=mysql-bin #开启复制功能
auto-increment-increment=2 #ID步长为2
auto-increment-offset=2 #表示自增长字段从哪个数开始
lower_case_table_names=1
#replicate-do-db = wang #需要同步的数据库
#binlog-ignore-db = mysql
#binlog-ignore-db = information_schema
3.重启后查看是否配置成功
show variables like ‘%log_bin%’;
show global variables like “%log%”;
4.在master mysql添加权限
GRANT REPLICATION SLAVE,FILE,REPLICATION CLIENT ON *.* TO 'repluser'@'%' IDENTIFIED BY '123456';
FLUSH PRIVILEGES;
5.在master上查看master的二进制日志
6.在slave中设置master的信息
CHANGE MASTER TO master_host = '192.168.0.11',
master_port = 3310,
master_user = 'repluser',
master_password = '123456',
master_log_file = 'mysql-bin.000001',
master_log_pos = 154;
7.开启slave,启动SQL和IO线程
start slave;
8.查看slave的状态
show slave status;
9. 查看进程信息
SHOW PROCESSLIST;