CREATE TABLE на MySQL Master, который не реплицируется на ведомые - PullRequest
0 голосов
/ 01 сентября 2011

У меня есть небольшой скрипт, который создает таблицу на главном сервере MySQL, заполняет ее данными, выполняет некоторую работу с данными и затем снова удаляет таблицу.

Я не хочу, чтобы все это копировалось рабам, так как это пустая трата времени.Есть ли способ сказать подчиненному, что он не имеет ничего общего с этой таблицей, либо сделав что-нибудь умное в самом операторе CREATE TABLE, либо установив команду config, которая сообщает что-то вроде: «Не реплицируйте никакую таблицу, начинающуюся с« temp_ »"(имя таблицы является динамическим, чтобы разрешить его нескольким пользователям, но оно всегда начинается с temp _).

Конечно, использование правильной временной таблицы было бы идеально, но, к сожалению, мне нужно обращаться к таблице несколько раз водин запрос, который MySQL не разрешает.

Ответы [ 2 ]

1 голос
/ 01 сентября 2011

для этого есть опция ,
но я не уверен, что вы предпочтете это (требуется перезагрузка)

Говорит подчиненному потоку SQL не реплицировать какие-либо операторы, которые обновляют указанную таблицу, даже если любые другие таблицы могут обновляться тем же оператором. Чтобы указать несколько таблиц для игнорирования, используйте эту опцию несколько раз, по одному для каждой таблицы.

подробнее подробнее

1 голос
/ 01 сентября 2011

Вы можете поместить таблицу в другую базу данных.

А затем сделайте заявление вроде:

SELECT a.field1, b.field2 FROM table1 a
INNER JOIN db2.tablex b
.....
...