MySQL Enterprise Backup 8.0.21 是 MySQL Enterprise Backup 的最新版本。它仅支持 MySQL Server 8.0.21。对于MySQL 8.0之前的版本,使用与服务器版本号相同的MySQL Enterprise Backup版本。MySQL server 5.7请使用MySQL Enterprise Backup 4.1,MySQL Server 5.6请使用MySQL Enterprise Backup 3.12。
在 MySQL 8.0.21 的文档中,我们已经开始将术语“ master ”更改为“ source ”,将术语“ slave ”更改为“ replica ”,将术语 “ whitelist ”更改为“ allowlist ”,将术语“ blacklist ”更改为“黑名单”. 目前产品的语法没有变化,因此这些术语仍然存在于当前代码需要使用它们的文档中。有关详细信息,请参阅博客文章 MySQL 术语更新。
对于 Windows,MySQL Enterprise Backup 的 MSI 安装程序包现在包括对所需 Visual Studio 可再发行组件包的检查,并在缺少时生成一条消息,要求用户安装它。(缺陷号 30541398)
-
重要变化:
mysql.backup_sbt_history备份服务器上表 的存储引擎 此外,表中还添加了一个自动递增的主键id列。使用组复制设置时, mysqlbackup现在backup_sbt_history通过确保在每个 mysqlbackup操作期间在主节点上更新表,使表对服务器组的所有成员可用。当 MySQL Enterprise Backup 8.0.21 或更高版本尝试使用 SBT API 在数据库上执行其第一次完整备份时(有关详细信息,请参阅 使用 Oracle Secure Backup 备份到磁带),它会自动检查
mysql.backup_sbt_history表的格式。如果它检测到表是旧格式(这意味着服务器已经从 8.0.20 或更早版本升级并且在使用 SBT API 之前已经由 MySQL Enterprise Backup 备份),它会尝试对表执行更新自动地。将表升级所需的这些权限授予mysqlbackup服务器上的用户:GRANT ALTER ON mysql.backup_sbt_history TO 'mysqlbackup'@'localhost'; GRANT CREATE, INSERT, DROP ON mysql.backup_sbt_history_old TO 'mysqlbackup'@'localhost'; GRANT CREATE, INSERT, DROP, ALTER ON mysql.backup_sbt_history_new TO 'mysqlbackup'@'localhost';有关详细信息,请参阅SBT 备份历史表更新。(缺陷号 30537077)
-
重要更改: 对于
backup-to-image操作,当为--backup-image选项指定相对路径时, mysqlbackup现在将给定的文件路径解释为相对于 备份目录。参考资料:另请参阅:Bug #30935456。
加密的 InnoDB 表现在可以包含在使用可 传输表空间 (TTS)的部分备份和恢复中。(缺陷号 31796017)
MySQL 服务器上表的
tool_name列backup_progress现在填充了 调用备份操作的完整mysqlbackup命令。(缺陷号 31011043)该文件
backup_gtid_executed.sql未包含在使用 GTID 的副本服务器的 TTS 备份中。只要--slave-info使用该选项,该文件现在就会包含在 TTS 备份中。(缺陷号 30925447)当备份正在进行时清除二进制或中继日志文件时,备份现在会失败;当发现服务器上缺少二进制日志文件时,它也会失败
mysqlbackup(但是,如果中继日志文件丢失,备份将继续)。(缺陷号 29269039)对增量备份 (
copy-back,copy-back-and-apply-log,apply-log) 进行操作的命令已得到简化:--incremental这些操作不再需要该选项。对压缩备份(
copy-back、copy-back-and-apply-log、apply-log等)进行操作的命令已得到简化:--uncompress不再需要该选项,除了 不使用该 选项extract的image-to-backup-dir操作 。--src-entry压缩的 InnoDB 文件现在正在
validate、backup和backup-to-image操作中进行验证。加密的 InnoDB 表现在正在
validate操作中进行验证。
当由于使用该
--compress-method选项而导致压缩备份的还原失败时, mysqlbackup不会打印有意义的错误消息。通过此修复,错误消息指示该选项与操作不兼容。(缺陷号 31861826)创建映像备份时,如果备份目录(用 指定
--backup-dir)已满,备份操作仍然完成,只是一个警告。然后尝试恢复备份导致 mysqlbackup意外退出。通过此修复,当备份目录已满时,备份会失败并出现错误。(缺陷号 31370902)对于从早期服务器版本升级的 MySQL Server 8.0.20,备份可能会失败, mysqlbackup 会抱怨第一个系统表空间文件(
ibdata1通常)已损坏。这是由于 MySQL Server 8.0.20 处理系统表空间的方式,mysqlbackup没有适应,有时会导致升级服务器出错。此补丁调整了 mysqlbackup以与服务器正常工作。(缺陷号 31263411)当该
--src-entry选项与list-image命令一起使用时, MySqlBackup并未一次拒绝该选项,而是完成了命令,然后丢弃了Invalid Argument错误。通过修复, mysqlbackupIncompatible Option立即在这种情况下抛出错误。(缺陷号 31255087)--with-timestamp使用该选项 时,增量备份的还原操作失败 。(缺陷号 31184454)MySqlBackup
extract失败 的操作抱怨设置了 该选项时没有表匹配 。通过此修复, mysqlbackup不再在这种情况下抛出错误,而是打印消息“ The src-entry 'backup_variables.txt' is by default extracted to the output directory ”。(缺陷号 31180805)--src-entrymeta/backup_variables.txt在非 Windows 平台上,当该
--force选项与 非 TTS 备份 的表级还原(选定表的部分还原)一起使用时,服务器上的重做日志文件被mysqlbackup删除。(缺陷号 31173210)在包含加密 InnoDB 表的 MySQL 服务器从 5.7 系列升级到 8.0 之后,对其进行的备份操作因密钥环错误而失败。这是由于在这种情况下mysqlbackup处理密钥环的方式,已通过此补丁修复。(缺陷号 31137866)
当该
--backup-image选项用于backup目录备份操作时,mysqlbackup忽略该选项并继续执行目录备份。通过此修复,mysqlbackup在这种情况下会抛出不兼容的选项错误。(缺陷号 31137103)Internal Error当使用该选项创建的压缩备份--use-tts=with-full-locking正在恢复时, mysqlbackup返回一个(缺陷号 31061894)备份副本服务器时,如果缺少一些中继日志文件,备份仍然按预期完成,但 mysqlbackup打印出错误消息。通过此修复,mysqlbackup在这种情况下会返回成功。(缺陷号 31059294)
当该
--backup-image选项与backup-and-apply-log命令一起使用时,MySqlBackup照常完成了命令,即使该选项和命令不兼容。通过此修复,在这种情况下, mysqlbackup会发出警告,指出该--backup-image选项已被忽略。(漏洞 #31001191)-
当使用 选项创建单文件备份并
--with-timestamp为 指定相对路径时--backup-image,图像备份创建在当前工作目录下(自 8.0.19 版以来这是预期的行为),但不在包含以下内容的子目录中:名称中的时间戳。使用此修复程序,情况下的备份位置已更改:对于
backup-to-image操作,给出的相对路径--backup-image现在被视为相对于备份目录,如果--with-timestamp使用该选项,则在备份目录下创建备份在名称中包含时间戳的子目录中。(缺陷号 30935456) 当通过媒体管理软件 (MMS) 备份到磁带时,mysqlbackup
0000-00-00 00:00:00始终为 备份服务器上的表中的操作条目设置默认值file_creation_time和 值。如果备份由于某些原因失败,这些零值将被写入表中。如果稍后 以NO_ZERO_DATE或 NO_ZERO_IN_DATE SQL 模式查询该表 ,则服务器返回。有了这个修复,在备份失败的情况下,mysqlbackupfile_expiry_timebackup_sbt_historybackup_sbt_historyERROR 1194 (HY000): Table 'backup_sbt_history' is marked as crashed and should be repaired将备份期间的当前时间写入这些值,因此时间值永远不会为零。(缺陷号 30275637)当该
--skip-binlog选项用于 TTS 备份的还原操作时,操作失败。通过此修复,该选项在这种情况下被忽略。(漏洞#29813666)当该
--compress-method选项设置为none时,如预期的那样,备份在没有压缩的情况下完成,但 mysqlbackup.ibz打印了错误的压缩信息,并以扩展名保存了 InnoDB 表空间文件 。通过此修复,mysqlbackup所描述的行为不再发生在这种情况下。(漏洞#29806518)该
--compress-level选项占用了一个值,而不是在没有选项的情况下使用该选项时0的默认值 。通过此修复,选项的默认值始终有效(对于适用的压缩方法)。(漏洞#29806518)1--compress-method--compressbackup-dir-to-image如果备份服务器使用密钥环插件而不是keyring_encrypted_file用于 InnoDB 表加密,则使用目录备份命令 创建的备份映像的还原操作失败 。这是因为backup-dir-to-image操作错误处理keyring_kef了备份中的文件,此补丁修复了该问题。(漏洞#27874581)