Как исключить некоторые таблицы из бенлогами в MySQL? - PullRequest
3 голосов
/ 08 июня 2011

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

[mysqld]
binlog-ignore-db=DB_TO_BE_SKIPPED

как я могу это сделатьтак что для конкретных таблиц (кэширование таблиц) ??
есть что-то вроде

binlog-ignore-table=tbl_boost_cache

** Edit **
Я использую Drupal, и есть функционалдефект с буст-кешированием в друпале.файлы binlog становятся большими по экспоненте.(иногда около 100 МБ / мин !!), и единственный способ избежать таких случаев - прекратить запись в журнал для этих таблиц. Спасибо !!

Ответы [ 3 ]

1 голос
/ 25 июля 2012

Если кто-то не находит что-то лучшее. Единственный способ, которым я мог найти, часть от использования «SET SQL_LOG_BIN = 0» - это переместить таблицу в другую базу данных и использовать binlog-ignore-db =

1 голос
/ 08 июня 2011

mysql имеет параметры:

replicate-ignore-table=db_name.tbl_name
replicate-wild-ignore-table=db_name.% 

ты можешь попробовать

0 голосов
/ 26 февраля 2014

Вы можете попробовать эту опцию: -

SET @@ session.sql_log_bin = 0;

ЗАГРУЗИТЬ ИНФИЛЬ ДАННЫХ 'имя_файла' - другие параметры загрузки данных INFILE;

SET @@ session.sql_log_bin = 1;

...