Как показать binlog_format на сервере MySQL?


17

Как мне показать binlog_formatна сервере MySQL?

И если мне не нравится, как я могу установить его на XX навсегда?

Где XX является STATEMENT, ROWили MIXED.

Ответы:


14

Мэтт Хили ответил на вопрос о том, как показать / установить формат из клиента mysql (на работающем сервере): SET GLOBAL binlog_format = [STATEMENT|ROW|MIXED]

Чтобы установить постоянное значение и предположить, что у вас есть доступ к my.cnf, добавьте:

[mysqld]
...

binlog_format=XX

...

и затем перезапустите свой сервер.


просто и лаконично. +1 !!!
RolandoMySQLDBA

2
> [mysqld] .....>> binlog-format = XX>> ..... Это должно быть binlog_format = XXX Подчеркнуть!

@Jeff Когда mysqld читает /etc/my.cnf, он полностью понимает как тире (-), так и подчеркивание (_). В клиенте mysql подчеркивание обязательно. +1 в любом случае, и добро пожаловать в DBA StackExchange !!!
RolandoMySQLDBA

1
@ Jeff спасибо! Странно, что они переключаются между '-' и '_', но в документах определенно говорится, что параметр файла опцииbinlog-format=format
Дерек Дауни

Я думаю, что binlog-формат (с чертой) используется из командной строки, в то время как binlog_format (с подчеркиванием) является именем системной переменной.
Дилан Хогг

27

Чтобы увидеть текущее значение binlog_format:

mysql> show variables like 'binlog_format';
+---------------+-----------+
| Variable_name | Value     |
+---------------+-----------+
| binlog_format | STATEMENT |
+---------------+-----------+
1 row in set (0.00 sec)

Чтобы изменить это:

mysql> SET GLOBAL binlog_format = 'STATEMENT';
mysql> SET GLOBAL binlog_format = 'ROW';
mysql> SET GLOBAL binlog_format = 'MIXED';

Источник: http://dev.mysql.com/doc/refman/5.1/en/binary-log-setting.html

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.