Spec-Zone.ru › MySQL Enterprise Backup 8.4

4.1.2 Предоставление привилегий MySQL администратору резервного копирования

Команда mysqlbackup подключается к серверу MySQL с использованием учетных данных, предоставленных параметрами --user и --password. Указанному user требуются определенные привилегии. Можно создать нового пользователя с ограниченным набором привилегий или использовать учетную запись администратора, например, root. Ниже приведены необходимые привилегии для mysqlbackup:

  • Минимальные привилегии для пользователя MySQL, с которым mysqlbackup подключается к серверу, включают:

    • SELECT для всех баз данных и таблиц, для блокировки таблиц, которая защищает резервные копии от несогласованности, вызванной параллельными операциями DDL.

    • BACKUP_ADMIN для всех баз данных и таблиц.

    • RELOAD для всех баз данных и таблиц.

    • SUPER для включения и отключения ведения журнала и оптимизации блокировки для минимизации перерывов в обработке базы данных.

    • REPLICATION CLIENT для получения позиции, которая хранится вместе с резервной копией.

    • PROCESS для обработки операторов DDL с клаузой ALGORITHM = INPLACE.

    • CREATE, INSERT, DROP и UPDATE для таблиц mysql.backup_progress и mysql.backup_history, а также SELECT и ALTER для mysql.backup_history.

    Чтобы создать пользователя MySQL (mysqlbackup в данном примере) и установить вышеупомянутые привилегии для подключения пользователя с localhost, выполните операторы, подобные следующим, из программы-клиента mysql:

    CREATE USER 'mysqlbackup'@'localhost' IDENTIFIED BY 'password';
    GRANT SELECT, BACKUP_ADMIN, RELOAD, PROCESS, SUPER, REPLICATION CLIENT ON *.*
        TO `mysqlbackup`@`localhost`;
    GRANT CREATE, INSERT, DROP, UPDATE ON mysql.backup_progress TO 'mysqlbackup'@'localhost';
    GRANT CREATE, INSERT, DROP, UPDATE, SELECT, ALTER ON mysql.backup_history
        TO 'mysqlbackup'@'localhost';
  • Следующие дополнительные привилегии необходимы для использования определенных функций MySQL Enterprise Backup:

    • Для использования для резервного копирования и восстановления таблиц InnoDB:

      • LOCK TABLES для резервного копирования таблиц. CREATE для восстановления таблиц.

      • DROP для удаления таблиц, если восстановление завершится неудачно по каким-либо причинам.

      • FILE для восстановления таблиц в внешних табличных пространствах вне каталога данных сервера.

    • Для создания резервных копий на ленте с помощью API System Backup to Tape (SBT):

      • CREATE, INSERT, DROP и UPDATE для таблицы mysql.backup_sbt_history

    • Для работы с зашифрованными таблицами InnoDB:

      • для включения вращения ключей шифрования InnoDB.

    • Для резервного копирования и восстановления созданных пользователем таблиц, не являющихся таблицами InnoDB:

      • LOCK TABLES для всех схем, содержащих созданные пользователем таблицы, не являющиеся таблицами InnoDB

    • Для использования для резервных копий:

      • INNODB_REDO_LOG_ARCHIVE для вызова функции innodb_redo_log_archive_start() .

    • Для раздела 5.1.4, “Восстановление на уровне таблиц (TLR)”:

      • INSERT и ALTER для обновления таблиц

    Установите эти дополнительные привилегии, если вы используете функции, которые их требуют. Чтобы установить все из них, выполните операторы, подобные следующим, из программы-клиента mysql:

    GRANT LOCK TABLES, CREATE, DROP, FILE, INSERT, ALTER ON *.* TO 'mysqlbackup'@'localhost';
    GRANT CREATE, DROP, UPDATE ON mysql.backup_sbt_history TO 'mysqlbackup'@'localhost';
    GRANT ENCRYPTION_KEY_ADMIN ON *.* TO 'mysqlbackup'@'localhost';
    GRANT INNODB_REDO_LOG_ARCHIVE ON *.* TO 'mysqlbackup'@'localhost';
  • Для привилегий, необходимых для использования MySQL Enterprise Backup с настройкой Group Replication, см. Главу 9, Использование MySQL Enterprise Backup с Group Replication.

  • После обновления сервера могут потребоваться следующие дополнительные привилегии:

    • При первом использовании MySQL Enterprise Backup 8.4 на сервере MySQL, обновленном с версии 8.0.18 или более ранней и уже резервированном MySQL Enterprise Backup:

      • ALTER для mysql.backup_progress.

      • CREATE, INSERT и DROP для mysql.backup_progress_old.

      • CREATE, INSERT, DROP и ALTER для mysql.backup_progress_new.

      Предоставьте эти привилегии, выполнив эти примеры операторов в клиенте mysql:

      GRANT ALTER ON mysql.backup_progress TO 'mysqlbackup'@'localhost';
      GRANT CREATE, INSERT, DROP ON mysql.backup_progress_old TO 'mysqlbackup'@'localhost';
      GRANT CREATE, INSERT, DROP, ALTER ON mysql.backup_progress_new TO 'mysqlbackup'@'localhost';
      Примечание

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

      Эти привилегии необходимы для попытки миграции таблицы mysql.backup_progress в новый формат (см. Приложение F, Обновление таблицы хода резервного копирования для получения подробной информации), и они больше не нужны после первой операции резервного копирования MySQL Enterprise Backup 8.4 на сервере, после чего они могут быть отозваны.

    • При первом использовании MySQL Enterprise Backup 8.4 на сервере MySQL, обновленном с версии 8.0.11 или более ранней и уже резервированном MySQL Enterprise Backup:

      • CREATE, INSERT и DROP для mysql.backup_history_old.

      • CREATE, INSERT, DROP и ALTER для mysql.backup_history_new.

      Предоставьте эти привилегии, выполнив эти примеры операторов в клиенте mysql:

      GRANT CREATE, INSERT, DROP ON mysql.backup_history_old TO 'mysqlbackup'@'localhost';
      GRANT CREATE, INSERT, DROP, ALTER ON mysql.backup_history_new TO 'mysqlbackup'@'localhost';
      Примечание

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

      Эти привилегии необходимы для попытки миграции таблицы mysql.backup_history в новый формат (см. Приложение D, Обновление таблицы истории резервных копий для получения подробной информации), и они больше не нужны после первой операции резервного копирования MySQL Enterprise Backup 8.4 на сервере, после чего они могут быть отозваны.

    • При первом выполнении резервного копирования с использованием API SBT с MySQL Enterprise Backup 8.4 на сервере MySQL, обновленном с версии 8.0.20 или более ранней и уже резервированном MySQL Enterprise Backup с использованием API SBT:

      • ALTER для mysql.backup_sbt_history.

      • CREATE, INSERT и DROP для mysql.backup_sbt_history_old.

      • CREATE, INSERT, DROP и ALTER для mysql.backup_sbt_history_new.

      Предоставьте эти привилегии, выполнив эти примеры операторов в клиенте 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';
      Примечание

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

      Эти привилегии необходимы для попытки миграции таблицы mysql.backup_sbt_history в новый формат (см. Приложение E, Обновление таблицы истории резервных копий SBT для получения подробной информации), и они больше не нужны после первой операции резервного копирования MySQL Enterprise Backup 8.4 с использованием API SBT на сервере, после чего они могут быть отозваны.

Примечание

Убедитесь, что ограничение MAX_QUERIES_PER_HOUR не установлено для пользователя, используемого командой mysqlbackup для доступа к серверу, иначе операции резервного копирования могут завершиться неожиданно.

© 2025 Oracle
Licensed under the GPLv2 License.
https://docs.oracle.com/cd/E17952_01/mysql-enterprise-backup-8.4-en/mysqlbackup.privileges.html

Spec-Zone.ru

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