Welcome

首页 / 数据库 / MySQL / MYSQL使用心得(八) 在线主从复制集群的配置与恢复及主主配置

MYSQL使用心得(八) 在线主从复制集群的配置与恢复及主主配置2014-05-12 iteye 85977328在线执行主从配置

步骤

1.锁表

FLUSH TABLES WITH READ LOCK;

2.拷贝数据文件,或者导出

3.记录下master的日志位置

master_log_file

master_log_pos

4.解除主库锁定

UNLOCK TABLES;

5.开始主从配置

6.配置完主从并启动之后,我们把从库挂载到集群中

其他

在从库数据文件夹下,有个master.info文件,是从机器上特有的。

重置从库:用于让从属服务器忘记其在主服务器的二进制日志中的复制位置, 它会删除master.info和relay- log.info文件,以及所有的中继日志,并启动一个新的中继日志,当你不需要主从的时候可以在从上执行这个操作。

reset slave;

重新配置主库(删除binlog)

reset master;

查看复制日志

show binlog events in "mysql-bin.000004" G;

主主配置

需要注意配置

[mysqld]

# 步进值

auto_increment_increment=2

# 起始偏移量

auto_increment_offset=1

# 使从服务器把复制的事件记录到自己的二进制日志中

log_slave_updates=1

自动删除binlog

设置自动清理MySQL binlog日志,配置my.cnf:

expire_logs_days = 10

在线进行主从恢复

1)首先要锁主库的表

FLUSH TABLES WITH READ LOCK;

2)然后复制主库的物理文件到从库上,保持数据文件一致。(建议使用mysqldump,可以保证数据的一致性)

3)记录下主库的

master_log_file

master_log_pos

4)解锁主库的表,此时虽然从库没有完成配置,但是写入数据也没有关系,我们已经记录下了bin-log的偏移位置。

UNLOCK TABLES;

5)从库新配置主从

附加阅读

在从库数据文件夹下,有个master.info文件,是从机器上特有的。

重置从库:用于让从属服务器忘记其在主服务器的二进制日志中的复制位置, 它会删除master.info和relay- log.info文件,以及所有的中继日志,并启动一个新的中继日志,当你不需要主从的时候可以在从上执行这个操作。

RESET SLAVE;

在线进行主主复制恢复

同上,锁表,拷贝相同的物理文件(建议使用mysqldump,可以保证数据的一致性),同时 记录下2

master_log_file

master_log_pos

然后解锁

配置主从同步