Mysql

從部分 innobackupex 備份恢復後如何恢復 performance_schema?

  • May 11, 2017

我正在從主伺服器進行部分備份,該備份需要在未來的從伺服器上恢復。我只需要其中一個數據庫和 mysql 數據庫。

我正在遵循https://www.percona.com/doc/percona-xtrabackup/2.2/innobackupex/partial_backups_innobackupex.html上的說明

我正在使用的命令如下所示:

innobackupex --user=<the_user> --password --databases="<database_name> mysql" --slave-info /path/backup

準備命令如下所示:

innobackupex --apply-log --export /path/backup

然後我

將準備好的備份複製回“乾淨的”數據目錄(在這種情況下,請確保包含 mysql 數據庫)。

MySQL 啟動良好,但沒有 performance_schema並且有很多

588

$$ ERROR $$本機表 ‘performance_schema’.’’ 的結構錯誤

在其錯誤日誌上。

知道為什麼會發生這種情況,以及如何恢復 performance_schema 嗎?

該解決方案需要在已恢復的伺服器上執行 mysql_upgrade。根據https://dev.mysql.com/doc/refman/5.5/en/performance-schema-build-configuration.html上的文件

如果您在沒有配置 Performance Schema 的先前安裝上安裝 MySQL(或使用可能沒有所有目前表的舊版本 Performance Schema),請在啟動伺服器後執行 mysql_upgrade 以確保 performance_schema 數據庫存在所有目前表。然後重新啟動伺服器。

引用自:https://dba.stackexchange.com/questions/118783