暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

17.3.1.2 Backing Up Raw Data from a Slave

原创 由迪 2020-03-05
557

为了保证所复制文件的完整性,应在关闭从属服务器时备份MySQL复制从属服务器上的原始数据文件。如果MySQL服务器仍在运行,则后台任务可能仍在更新数据库文件,尤其是那些涉及具有后台进程(例如)的存储引擎的任务InnoDB。使用InnoDB,可以在崩溃恢复期间解决这些问题,但是由于可以在备份过程中关闭从服务器而不影响主服务器的执行,因此可以利用此功能。

要关闭服务器并备份文件:

关闭从MySQL服务器:

shell> mysqladmin shutdown
复制数据文件。您可以使用任何合适的复制或归档实用程序,包括cp, tar或WinZip。例如,假设数据目录位于当前目录下,则可以按以下方式归档整个目录:

shell> tar cf /tmp/dbbackup.tar ./data
再次启动MySQL服务器。在Unix下:

shell> mysqld_safe &
在Windows下:

C:> “C:\Program Files\MySQL\MySQL Server 5.6\bin\mysqld”
通常,您应该备份从MySQL服务器的整个数据目录。如果您希望能够还原数据并作为从站运行(例如,在从站发生故障的情况下),那么除了从站的数据外,还应该备份从站状态文件,主站信息和中继日志信息存储库,以及中继日志文件。恢复从设备的数据后,需要这些文件来恢复复制。

如果丢失了中继日志,但是仍然有该relay-log.info文件,则可以检查该 文件以确定SQL线程在主二进制日志中执行了多远。然后你可以使用CHANGE MASTER TO与MASTER_LOG_FILE和 MASTER_LOG_POS选项告诉奴隶从该点重新读取二进制日志。这要求二进制日志仍然存在于主服务器上。

如果从属服务器正在复制LOAD DATA语句,则还应该备份SQL_LOAD-*该从属服务器用于此目的的目录中存在的所有 文件。从站需要这些文件来恢复任何中断的LOAD DATA操作的复制 。该目录的位置是slave_load_tmpdir系统变量的值 。如果未使用该变量集启动服务器,则目录位置是tmpdir系统变量的值 。

「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论