Spec-Zone.ru › MySQL 8.4

15.1.5 Заявление ALTER INSTANCE

ALTER INSTANCE instance_action

instance_action: {
  | {ENABLE|DISABLE} INNODB REDO_LOG
  | ROTATE INNODB MASTER KEY
  | ROTATE BINLOG MASTER KEY
  | RELOAD TLS
      [FOR CHANNEL {mysql_main | mysql_admin}]
      [NO ROLLBACK ON ERROR]
  | RELOAD KEYRING
}

ALTER INSTANCE определяет действия, применимые к экземпляру сервера MySQL. Данное заявление поддерживает следующие действия:

  • ALTER INSTANCE {ENABLE | DISABLE} INNODB REDO_LOG

    Это действие включает или выключает ведение журнала InnoDB. Ведение журнала включено по умолчанию. Эта функция предназначена только для загрузки данных в новый экземпляр MySQL. Заявление не записывается в двоичный журнал.

    Предупреждение

    Не отключайте ведение журнала redo на производственной системе. Хотя разрешено выключить и перезапустить сервер, когда ведение журнала redo отключено, неожиданная остановка сервера, когда ведение журнала redo отключено, может привести к потере данных и повреждению экземпляра.

    Операция ALTER INSTANCE [ENABLE|DISABLE] INNODB REDO_LOG требует эксклюзивной блокировки резервной копии, которая предотвращает одновременное выполнение других операций ALTER INSTANCE. Другие операции ALTER INSTANCE должны дождаться освобождения блокировки перед выполнением.

    Дополнительную информацию см. в разделе Отключение ведения журнала redo.

  • ALTER INSTANCE ROTATE INNODB MASTER KEY

    Это действие вращает главный ключ шифрования, используемый для шифрования InnoDB табличного пространства. Для вращения ключа требуется привилегия ENCRYPTION_KEY_ADMIN или SUPER. Для выполнения этого действия необходимо установить и настроить плагин хранилища ключей. Инструкции см. в разделе 8.4.4 «Хранилище ключей MySQL».

    ALTER INSTANCE ROTATE INNODB MASTER KEY поддерживает одновременные операции DML. Однако его нельзя выполнять одновременно с операциями CREATE TABLE ... ENCRYPTION или ALTER TABLE ... ENCRYPTION, и блокировки накладываются, чтобы предотвратить конфликты, которые могут возникнуть при одновременном выполнении этих заявлений. Если одно из конфликтных заявлений выполняется, оно должно завершиться перед тем, как другое сможет продолжить работу.

    Заявления ALTER INSTANCE ROTATE INNODB MASTER KEY записываются в двоичный журнал, чтобы их можно было выполнить на реплицированных серверах.

    Дополнительную информацию об использовании ALTER INSTANCE ROTATE INNODB MASTER KEY см. в разделе 17.13 «Шифрование данных InnoDB в состоянии покоя».

  • ALTER INSTANCE ROTATE BINLOG MASTER KEY

    Это действие вращает главный ключ двоичного журнала, используемый для шифрования двоичного журнала. Для вращения ключа главного двоичного журнала требуется привилегия BINLOG_ENCRYPTION_ADMIN или SUPER. Данное заявление нельзя использовать, если переменная системы binlog_encryption установлена в OFF. Для выполнения этого действия необходимо установить и настроить плагин хранилища ключей. Инструкции см. в разделе 8.4.4 «Хранилище ключей MySQL».

    Действия ALTER INSTANCE ROTATE BINLOG MASTER KEY не записываются в двоичный журнал и не выполняются на репликах. Поэтому вращение главного ключа двоичного журнала можно выполнять в средах репликации, включая смесь версий MySQL. Для планирования регулярного вращения главного ключа двоичного журнала на всех применимых источниковых и репликах серверах можно включить планировщик событий MySQL на каждом сервере и выполнить заявление ALTER INSTANCE ROTATE BINLOG MASTER KEY с помощью заявления CREATE EVENT. Если вы вращаете главный ключ двоичного журнала, потому что подозреваете, что текущий или любой из предыдущих ключей двоичного журнала мог быть скомпрометирован, выполните заявление на каждом применимом источниковом и реплике сервера, что позволяет вам проверить немедленное соответствие.

    Дополнительную информацию об использовании ALTER INSTANCE ROTATE BINLOG MASTER KEY, в том числе о том, что делать, если процесс не завершается правильно или прерывается неожиданной остановкой сервера, см. в разделе 19.3.2 «Шифрование файлов двоичного журнала и файлов журнала репликации».

  • ALTER INSTANCE RELOAD TLS

    Это действие переконфигурирует контекст TLS из текущих значений переменных системы, определяющих контекст. Также обновляются переменные состояния, которые отражают активные значения контекста. Для этого действия требуется привилегия CONNECTION_ADMIN. Дополнительную информацию о переконфигурации контекста TLS, включая переменные системы и состояния, относящиеся к контексту, см. в разделе Конфигурация и мониторинг конфигурации на стороне сервера для шифрованных соединений.

    По умолчанию заявление перезагружает контекст TLS для основного интерфейса соединения. Если указан пункт FOR CHANNEL, заявление перезагружает контекст TLS для указанного канала: mysql_main для основного интерфейса соединения, mysql_admin для административного интерфейса соединения. Сведения об интерфейсах см. в разделе 7.1.12.1 «Интерфейсы подключений». Обновленные свойства контекста TLS отображаются в таблице Performance Schema tls_channel_status. См. раздел 29.12.22.9 «Таблица tls_channel_status».

    Обновление контекста TLS для основного интерфейса может также повлиять на административный интерфейс, потому что, если для этого интерфейса не настроен какой-либо нестандартный параметр TLS, он использует тот же контекст TLS, что и основной интерфейс.

    Примечание

    При перезагрузке контекста TLS OpenSSL перезагружает файл, содержащий список отзыва сертификатов (CRL), как часть процесса. Если файл CRL большой, сервер выделяет большой блок памяти (в десять раз больше размера файла), который удваивается при загрузке нового экземпляра и до того, как старый был освобожден. Резидентная память процесса не уменьшается сразу после освобождения большого выделения, поэтому, если вы неоднократно выполняете заявление ALTER INSTANCE RELOAD TLS с большим файлом CRL, это может привести к увеличению использования памяти процесса из-за этого.

    По умолчанию действие RELOAD TLS отменяется с ошибкой и не оказывает никакого эффекта, если значения конфигурации не позволяют создать новый контекст TLS. Предыдущие значения контекста по-прежнему используются для новых подключений. Если указан необязательный пункт NO ROLLBACK ON ERROR и новый контекст не может быть создан, откат не происходит. Вместо этого генерируется предупреждение, и шифрование отключается для новых подключений по интерфейсу, к которому относится заявление.

    Заявления ALTER INSTANCE RELOAD TLS не записываются в двоичный журнал (и, следовательно, не реплицируются). Конфигурация TLS локальна и зависит от локальных файлов, которые могут отсутствовать на всех участвующих серверах.

  • ALTER INSTANCE RELOAD KEYRING

    Если компонент хранилища ключей установлен, это действие сообщает компоненту перечитать свой конфигурационный файл и повторно инициализировать любые данные хранилища ключей в оперативной памяти. Если вы измените конфигурацию компонента во время выполнения, новые настройки не вступят в силу, пока вы не выполните это действие. Для перезагрузки хранилища ключей требуется привилегия ENCRYPTION_KEY_ADMIN.

    Это действие позволяет переконфигурировать только текущий установленный компонент хранилища ключей. Оно не позволяет изменить установленный компонент. Например, если вы измените конфигурацию установленного компонента хранилища ключей, ALTER INSTANCE RELOAD KEYRING приведет к тому, что новые настройки вступят в силу. С другой стороны, если вы измените компонент хранилища ключей, указанный в файле манифеста сервера, ALTER INSTANCE RELOAD KEYRING не оказывает никакого эффекта, и текущий компонент остается установленным.

    Заявления ALTER INSTANCE RELOAD KEYRING не записываются в двоичный журнал (и, следовательно, не реплицируются).

© 2025 Oracle
Licensed under the GPLv2 License.
https://docs.oracle.com/cd/E17952_01/mysql-8.4-en/alter-instance.html

Spec-Zone.ru

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