Spec-Zone.ru › MySQL 9.2

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. Выражение не записывается в бинарный журнал.

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

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

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

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

  • ALTER INSTANCE ROTATE INNODB MASTER KEY

    Это действие вращает главный криптографический ключ, используемый для InnoDB шифрования табличного пространства. Вращение ключа требует привилегии ENCRYPTION_KEY_ADMIN или SUPER. Для выполнения этого действия должен быть установлен и настроен плагин keyring. Инструкции см. в Разделе 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. Для выполнения этого действия должен быть установлен и настроен плагин keyring. Инструкции см. в Разделе 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 на стороне сервера для защищенных соединений.

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

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

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

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

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

Spec-Zone.ru

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