请参阅MySQL企业备份4.0版本说明的修复错误列表mysqlbackup.以下是MySQL企业备份的限制列表:
在Linux、Unix和OS X系统中,mysqlbackup不记录备份文件的文件所有权或权限。在恢复时,这些文件可能具有不同的所有权(例如,属于
根
而不是mysql
)。它们还可能具有不同的读/写权限(例如,任何人都可以读,而不仅仅是文件所有者)。在规划备份策略时,请检查MySQL数据目录中的文件,以确保它们具有一致的所有者和权限设置。执行还原操作时,请使用的适当组合苏
,umask
,乔恩
,修改文件权限
在恢复的文件上设置与原始文件相同的所有者和特权。确保正确的文件所有权和权限的最简单方法通常是以运行服务器的同一用户运行恢复操作mysql
.在某些情况下,非事务性表(如
MyISAM
表可能包含其他未提交的数据。如果自动提交是关闭的,两者都是InnoDB
在同一个事务中修改表和非事务性表,可以在二进制日志位置更新之前将数据写入非事务性表。在提交事务时更新二进制日志位置,但立即写入非事务性数据。如果在这样的事务打开时进行备份,则备份数据包含对非事务表所做的更新。如果mysqlbackup进程被中断,例如Unix
kill - 9
命令,使用读锁刷新表
操作可能仍在运行。在这种情况下,使用杀死查询
来自mysql命令行杀死使用读锁刷新表
声明。此问题更有可能发生,如果刷新表
操作因长时间运行的查询或事务而停滞。指第10.1节,“优化备份性能”有关备份时间和性能的指导原则。不要运行DDL操作(例如,
ALTER TABLE
,截断表
,优化表
,修理表
,恢复表
或创建索引
),而备份操作正在进行。生成的备份可能会损坏。的
引擎
列中mysql.backup_history
表不能正确反映备份数据库的存储引擎。对于具有繁重写入工作负载的大型数据库(例如,每分钟千兆字节)的热备份可能需要很长时间才能完成,因为在进行备份时服务器上生成了巨大的重做日志文件。如果重做日志文件的增长速度超过了mysqlbackup的处理速度,当mysqlbackup无法赶上重做日志周期,并且lsn在被mysqlbackup读取之前被服务器覆盖时,备份操作实际上可能会失败。在备份过程中,当可用于读写重做日志的I/O资源很少时,问题就会加剧。但是,如果数据库中只有少数表经常被修改,那么乐观备份特性可能会缓解这个问题。看到第4.3.6节“做乐观备份”获取详细信息。
虽然使用MySQL企业备份可以备份到网络附加存储(NAS)设备或从NAS设备恢复,但由于可能出现的网络问题,备份的一致性和备份或恢复操作的性能可能会受到损害。
创建备份时使用可移动表空间(TTS)对于包含混合使用Antelope和Barracuda文件格式的表的服务器,不要对表应用完全锁定(即不指定)
——use-tts = with-full-locking
)。相反,只需指定——use-tts
或——use-tts = with-minimum-locking
,这两种方法都将对表应用最小锁。对分区表进行备份可移动表空间(TTS)将在共享表空间中创建任何(或全部)分区时失败。
恢复使用可移动表空间(TTS),即使
——力
选项,如果在备份服务器的数据目录之外创建了任何分区,则会失败。如果在创建备份时在服务器上执行了DDL语句可移动表空间(TTS),备份可能会失败。这是因为没有被备份的表在备份过程中没有被锁定,但是mysqlbackup在流程结束时仍然检查这些表的状态,如果这些表的定义已经更改,则可能会发生错误。为避免出现此问题,请不要执行任何DDL操作,特别是
删除表
,此时正在进行TTS备份。如果包含全文检索(FTS)索引的表使用可移动表空间(TTS),恢复后,FTS索引将被破坏。用户需要用下面的命令重新创建索引:
mysql mysql>
然后,检查表是否有更多错误:
mysql>检查表
在MySQL服务器上使用
ANSI_QUOTES
SQL模式不能使用可移动表空间(TTS).MySQL企业备份不包含
.pem
文件从服务器到备份。当启用SSL连接时,这些文件是服务器实例的一部分。在使用
backup-and-apply-log
命令,没有连接到MySQL服务器,mysqlbackup无法知道备份的正确二进制日志文件名和二进制日志位置;然而,在最后backup-and-apply-log
操作,mysqlbackup仍然输出二进制日志文件名和位置的一些值,这些值本质上是随机的,用户应该忽略它们。在备份MySQL 5.7实例时,如果a
创建索引
声明与算法=就地
在进行备份时发出,因为该语句不会进入MySQL 5.7服务器的重做日志(参见排序索引构建(详细信息),则不能将其记录在备份中,并且索引不会被重新创建mysqlbackup恢复备份时。当服务器数据目录的子目录下存在无法识别的文件类型的文件时,将使用mysqlbackup除非
——only-known-file-types
选项。但是,如果文件名没有扩展名,则会导致mysqlbackup在尝试将备份还原到服务器时抛出错误。使用
——src-entry
选项。提取
在云备份上执行命令将导致该命令失败。云备份只能全部提取。由于一些问题,MySQL企业备份4.0目前不支持使用Amazon S3进行云备份和恢复。