Como mostro o binlog_format em um servidor MySQL?

17

Como mostro o binlog_formatem um servidor MySQL?

E se eu não gosto, como faço para configurá-lo para XX permanentemente?

Onde XX é STATEMENT, ROWou MIXED.

Nifle
fonte

Respostas:

14

Matt Healy respondeu à pergunta sobre como mostrar / definir o formato do cliente mysql (em um servidor em execução) com SET GLOBAL binlog_format = [STATEMENT|ROW|MIXED]

Para definir o valor permanentemente e supondo que você tenha acesso ao my.cnf, adicione:

[mysqld]
...

binlog_format=XX

...

e, em seguida, reinicie o servidor.

Derek Downey
fonte
simples e conciso. +1 !!!
RolandoMySQLDBA
2
> [mysqld] .....>> formato binlog = XX>> ..... Isso precisa ser binlog_format = XXX Sublinhado!
@ Jeff Quando o mysqld lê /etc/my.cnf, ele entende totalmente os traços (-) e os sublinhados (_). No cliente mysql, um sublinhado é obrigatório. +1 de qualquer maneira e bem-vindo ao DBA StackExchange !!!
RolandoMySQLDBA
1
@jeff thanks! É estranho que eles flip flop entre '-' e '_', mas os docs definitivamente dizer o parâmetro de arquivo de opção ébinlog-format=format
Derek Downey
Eu acho que o formato binlog (com traço) é usado na linha de comando, enquanto binlog_format (com sublinhado) é o nome da variável do sistema.
Dylan Hogg
27

Para ver o valor atual binlog_format:

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

Para mudar isso:

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

Fonte: http://dev.mysql.com/doc/refman/5.1/en/binary-log-setting.html

Matt Healy
fonte