Spec-Zone.ru › MySQL Enterprise Backup 9.2
Приложение E Обновление таблицы истории резервного копирования SBT

Приложение E Обновление таблицы истории резервного копирования SBT

Таблица mysql.backup_sbt_history была обновлена с выпуском MySQL Enterprise Backup 8.0.21 следующим образом:

  • Изменен движок хранения с CSV на InnoDB

  • Добавлено новое поле автоинкрементируемого первичного ключа id

Когда MySQL Enterprise Backup 9.2 пытается выполнить первое полное резервное копирование базы данных, используя API SBT (подробности см. в Разделе 11.1, «Резервное копирование на ленту с помощью Oracle Secure Backup»), оно автоматически проверяет формат таблицы mysql.backup_sbt_history. Если обнаруживается, что таблица имеет старый формат (что означает, что сервер был обновлён с версии 8.0.20 или более ранней и был резервным копирован MySQL Enterprise Backup до использования API SBT), оно пытается автоматически обновить таблицу следующим образом:

  1. Создать таблицу с новым форматом под названием mysql.backup_sbt_history_new и скопировать в неё данные из исходной таблицы mysql.backup_sbt_history.

  2. Переименовать исходную таблицу mysql.backup_sbt_history в mysql.backup_sbt_history_old, и таблицу mysql.backup_sbt_history_new в mysql.backup_sbt_history.

  3. Удалить таблицу mysql.backup_history_old.

Для успешной миграции на новый формат таблицы, перед выполнением первой задачи резервного копирования с использованием API SBT с MySQL Enterprise Backup 9.2 на сервере MySQL, который был обновлён с версии 8.0.20 или более ранней и был резервным копирован MySQL Enterprise Backup ранее с использованием API SBT, необходимо предоставить необходимые привилегии пользователю mysqlbackup на сервере, выполнив следующие команды в клиенте mysql:


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';

Если эти привилегии не предоставлены, первое полное резервное копирование обновлённого сервера с использованием API SBT завершится ошибкой, подобной следующей:

200612 08:40:45 MAIN ERROR: MySQL query 'DROP TABLE IF EXISTS mysql.backup_sbt_history_old': 1142, DROP command denied to user 'mysqlbackup'@'localhost' for table 'backup_sbt_history_old'
mysqlbackup failed with errors!

После выполнения первого полного резервного копирования с использованием API SBT MySQL Enterprise Backup 9.2 эти привилегии больше не нужны и могут быть отозваны.

Примечание

Если вы работаете с настройкой групповой репликации с несколькими первичными узлами, убедитесь, что эти привилегии предоставлены на всех первичных узлах; см. также Главу 9, «Использование MySQL Enterprise Backup с групповой репликацией».

© 2025 Oracle
Licensed under the GPLv2 License.
https://docs.oracle.com/cd/E17952_01/mysql-enterprise-backup-9.2-en/backup-sbt-history-table-update.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API