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

Я хочу выполнить импорт большого файла в MySQL. Однако я не хочу записанный в двоичный журнал, потому что импорт займет много времени, и заставлять ведомые устройства падать далеко позади. Я выполнил бы его отдельно на ведомых устройствах после факта, потому что это будет намного легче в системе. Рассматриваемая таблица является новой, и поэтому я не должен действительно волноваться об этом выходящий из синхронизации, поскольку у ведущего устройства и всех ведомых устройств будут те же данные в конце, потому что они все импортируют тот же файл в конечном счете. Я также не хочу изменяться, любое копирование - игнорирует -* или binlog_ignore -* опции, потому что они требуют перезапуска рассматриваемых серверов. Существует ли способ выполнить единый запрос, не пишущий это в двоичный журнал?

Я уже знаю ответ, но я не мог найти его очень легко в сети, таким образом, я позволяю кому-то отправить ответ для понимания некоторых мыслей представителя. Если не будет никаких ответов в небольшом белом, то я отправлю ответ, который я нашел.

32
задан Kibbee 2 June 2010 в 14:07
поделиться

1 ответ

Вы можете использовать переменную сессии sql-log-bin, чтобы отключить ведение журнала для текущей сессии. Просто введите:

SET sql_log_bin = 0;

и все запросы в текущей сессии не будут отправляться в двоичный журнал. Если вы хотите снова включить двоичное протоколирование, выполните:

SET sql_log_bin = 1;

Это относится только к текущей сессии, в которой вы находитесь. Все остальные запросы от всех других соединений будут продолжать записываться в журнал. Кроме того, для этого вы должны обладать привилегиями SUPER.

54
ответ дан 27 November 2019 в 20:17
поделиться
Другие вопросы по тегам:

Похожие вопросы: