2015-05-15

MySQL 在线增加从库

Views: 12599 | 2 Comments

Master

创建用户:

GRANT REPLICATION SLAVE ON *.* TO 'userx'@'server_b' IDENTIFIED BY 'xxxxx';

导出数据:

mysqldump --all-databases --master-data > dbdump.sql

导致的 dbdump.sql 里会包含 binlog 的位置.

Slave

CHANGE MASTER TO MASTER_HOST='server_a';
CHANGE MASTER TO MASTER_USER='userx';
CHANGE MASTER TO MASTER_PASSWORD='xxxxx';
CHANGE MASTER TO MASTER_LOG_FILE='mysql-bin.000001', MASTER_LOG_POS=106;
start slave;
show slave status\G

Related posts:

  1. MySQL 数据库双主配置
  2. MySQL binlog查看和清理
  3. SSDB源码分析 – 主从和多主同步原理解析
  4. MySQL 基本配置
  5. Linux下编译安装Apache/Nginx/Lighttpd+PHP+MySQL
Posted by ideawu at 2015-05-15 10:14:21

2 Responses to "MySQL 在线增加从库"

  • 这个方法是没办法在线做从库的。如果不对整个数据库加一个只读的锁,在mysqldump的时候,不停的有数据写入已经导出的表,最终导出来的其实并不是同一个时间点上的数据。binlog的位置跟导出的数据是不匹配的。在线做从库可以用percona的工具做,基本不影响线上数据库的使用。 Reply
    @gfreezy: –master-data 选项会自动锁全部表. Reply

Leave a Comment