Ale*_*rey 9 mysql replication backup-restoration
我在 2 个服务器之间设置了 MySQL 复制,master ( A ) 和 slave ( B )。我需要在混合中添加一个新的奴隶 ( C )。我希望这个从站直接从主站获取更新,我不想从从站进行链式复制。但是,master 是“热”的,我通常使用 Xtrabackup 来创建 master 的完整备份,但这会锁定它 10 分钟,因为数据库大小约为 20GB。
WITH READ LOCK FLUSH TABLES上从乙上使用SHOW SLAVE STATUS乙,写下二进制日志和位置。然后用 Xtrabackup 备份数据库,将备份传送到C并使用它来创建从属,并将复制设置为指向A并使用我刚刚写下的 binlog 位置。
有没有更好的方法不需要我锁定B这么长时间?或者更容易自动化的东西?
Rol*_*DBA 22
嘿我知道一个疯狂的方法来创建一个从站而不增加主站(服务器 A)或从站(服务器 B)的任何操作
步骤 1) 设置新服务器 (ServerC)
步骤2)在ServerC上,安装MySQL(与ServerB版本相同)
步骤 3) 在 ServerC 上,服务 mysql 停止
步骤 4) 将 /etc/my.cnf 从 ServerB 复制到 ServerC
步骤 5) 在 ServerC 上,将 server_id 更改为与 ServerA 和 ServerB 不同的值
步骤 6)将 ServerB 上的 rsync /var/lib/mysql rsync /var/lib/mysql 到 ServerC
步骤 7) 当 rsync 完成后,运行“STOP SLAVE;” 服务器B上
步骤 8) 将 ServerB 上的 /var/lib/mysql rsync /var/lib/mysql 到 ServerC
步骤 9) 在 ServerB 上,运行“START SLAVE;”
步骤10)在ServerC上,服务mysql启动
步骤 11) 在 ServerC 上,运行“START SLAVE;” (如果skip-slave-start 在/etc/my.cnf 中,请执行此操作)
试一试 !!!
顺便说一句,我非常有信心这会奏效,因为我在过去 2 天内刚刚为客户做过这件事。客户端在从站上有 2.7TB 的数据。我 rsyncd 到另一台服务器,而从站仍处于活动状态。rsync 花了大约 11 个小时。然后我跑了STOP SLAVE;在第一个从站上并再次运行 rsync。那又花了一个小时。然后我执行了上面的步骤,一切都完成了。
| 归档时间: |
|
| 查看次数: |
11740 次 |
| 最近记录: |