19.5.1.6 Репликация операторов CREATE ... IF NOT EXISTS
MySQL применяет следующие правила при репликации различных операторов CREATE ... IF
NOT EXISTS:
Каждый оператор
CREATE DATABASE IF NOT EXISTSреплицируется, независимо от того, существует ли база данных на источнике.Аналогично, каждый оператор
CREATE TABLE IF NOT EXISTSбез оператораSELECTреплицируется, независимо от того, существует ли таблица на источнике. Это включаетCREATE TABLE IF NOT EXISTS ... LIKE. Репликация оператораCREATE TABLE IF NOT EXISTS ... SELECTподчиняется несколько иным правилам; см. Раздел 19.5.1.7, «Репликация операторов CREATE TABLE ... SELECT» для получения дополнительной информации.Оператор
CREATE EVENT IF NOT EXISTSвсегда реплицируется, независимо от того, существует ли событие с указанным в операторе именем на источнике.Оператор
CREATE USERзаписывается в двоичный журнал только в случае успеха. Если оператор включаетIF NOT EXISTS, он считается успешным и записывается в журнал, при условии, что хотя бы один пользователь, указанный в операторе, был создан. В таких случаях оператор записывается в журнал как выполненный; это также включает ссылки на существующих пользователей, которые не были созданы. См. CREATE USER Двоичная запись журналов для получения дополнительной информации.Оператор
CREATE PROCEDURE IF NOT EXISTS,CREATE FUNCTION IF NOT EXISTSилиCREATE TRIGGER IF NOT EXISTS, если он успешен, записывается полностью в двоичный журнал (включая клаузуIF NOT EXISTS), независимо от того, вывел ли оператор предупреждение, потому что объект (процедура, функция или триггер) уже существовал.
© 2025 Oracle
Licensed under the GPLv2 License.