LMLPHP后院

MySQL 使用 mysqldump 创建一个数据快照技术

maybe yes 发表于 2018-08-12 11:21

MySQL 主从同步配置使用 mysqldump 创建数据快照

一种方法在已存在的主数据库创建数据快照使用 mysqldump 工具创建一个包含所有数据库的用来复制的转储文件。一旦创建完成,就可以在从数据库上导入这个文件开始复制进程。

下面示例备份所有数据库到一个文件名为 dump.db,导出过程中包含来 --master-data 参数,这个参数能够自动的添加 CHANGE MASTER TO 语句,从服务器需要这个语句开始复制进程。

$ mysqldump --all-databases --master-data > dump.db

如果不使用 --master-data,在导出的时候需要优先在一个单独的会话中手动的锁定表(使用 FLUSH TABLES WITH READ LOCK),然后退出或者在第二个会话中执行 UNLOCK TABLES 来释放锁。同样也必须要使用 SHOW MASTER STATUS 获取二进制日志文件的位置信息来匹配快照数据,在开始从服务器复制的时候使用这个信息来执行适当的 CHANGE MASTER TO 语句。

选择数据库备份到 dump 文件,记住需要在每个从服务器上过滤出你想要包含在复制进程中的数据库。

导入数据,可以复制 dump 文件到从服务器,或者通过远程连接的方式访问主服务的 dump 文件。

2021-11-28 04:01:38 1638043298 0.018225