mysql主从复制

1、Master服务器配置。

[root@localhost ~]# vim /etc/my.cnf 
log-bin=master-bin
log-bin-index=master-bin.index
innodb_file_per_table = 1
binlog_format=mixed
server-id  = 1    #必须是唯一值
sync_binlog=1     #设置主从同步二进制日志文件
mysql> GRANT REPLICATION SLAVE ON *.* TO 'repluser'@'172.16.%.%' IDENTIFIED BY 'replpass';
mysql> flush privileges;
mysql> SHOW MASTER STATUS\G;
mysql> show binlog events in 'master-bin.000003';  #查看二进制日志事务

2、Slave服务器配置。

[root@localhost ~]# vim /etc/my.cnf 
relay-log = relay-log
server-id = 2
relay-log-index = relay-log.index
read-only = on   #数据库只读锁定,不影响主从复制
skip_slave_start=1  #禁止slave随数据库启动
mysql> CHANGE MASTER TO MASTER_HOST='172.16.23.22',MASTER_LOG_FILE='master-bin.000001', \
MASTER_USER='repluser',MASTER_PASSWORD='replpass',MASTER_LOG_POS=4;
mysql> HELP CHANGE MASTER TO  #查看命令用法
mysql> SHOW SLAVE STATUS\G;   #查看状态
mysql> START SLAVE;    #启动slave服务
mysql> START SLAVE IO_THREAD;  #依次启动slave服务
mysql> START SLAVE SQL_THREAD;  
mysql> show global variables like 'read%';  #查看全局变量验证只读锁定
mysql> set global read_only=off;  #临时修改系统变量
[root@localhost ~]# cat /datadir/master.info  #文件记录了master的连接帐号信息
[root@localhost ~]# cat /datadir/relay-log.info  #文件记录了中继日志的信息

3、主从复制故障处理。

     1)主从同步出现异常语句跳过处理

mysql> stop slave
mysql> set global sql_slave_skip_counter=1; #跳过一个事务
mysql> start slave;


你可能感兴趣的:(mysql,master,slave,主从复制)