附录D备份历史表更新

mysql.backup_historyMySQL Enterprise Backup 8.0.12更新MySQL Enterprise Backup 8.0.12更新MySQL Enterprise Backup 8.0.12更新MySQL Enterprise Backup 8.0.12

  • 修改存储引擎由CSV格式修改为InnoDB格式

  • 新增服务器uuid列

当MySQL Enterprise Backup 8.0.12或更高版本尝试对数据库执行第一次完全备份时,它会自动检查格式mysql.backup_history表格如果它检测到表的格式(这意味着服务器已经升级从8.0.11或更早(或5.7.22或更早),支持MySQL企业之前备份),它试图执行一个格式自动更新在表下面的步骤:

  1. 以新的格式创建一个名为mysql.backup_history_new然后把原始数据复制进去mysql.backup_history表格

  2. 重命名原mysql.backup_historymysql.backup_history_old,mysql.backup_history_newmysql.backup_history

  3. MySQL企业备份8.0.21及以上版本:mysql.backup_history_old表格

迁移到新表的格式要取得成功,在执行第一个备份任务与MySQL企业备份之前8.0.12或晚第一次从8.0.11 MySQL服务器已经升级或更早,一直支持MySQL企业备份之前,授予所需的特权mysqlbackup通过在mysql客户端:

授予mysql上创建、插入、删除的权限。backup_history_old“mysqlbackup”@“localhost”;授予mysql的创建、插入、删除、修改权限。backup_history_new“mysqlbackup”@“localhost”;

如果没有授予这些权限,升级后的服务器上的第一次全量备份将失败,并报错如下:

180612 08:40:45主要错误:MySQL查询'DROP TABLE IF EXISTS MySQL . 'backup_history_old': 1142, DROP command denied to user 'mysqlbackup'@'localhost' for table 'backup_history_old' mysqlbackup failed with errors!

在MySQL Enterprise backup 8.0.12或更高版本执行第一次完全备份后,这些权限不再需要,此时它们可以被撤销。

请注意

如果使用多主组复制设置,请确保在所有主节点上授予这些特权;另请参阅第9章,使用MySQL企业备份和组复制