/etc/my.cnfファイルでbinlog-format = ROWを起動時のデフォルトにするにはどうすればよいですか?


9

クエリSET GLOBAL binlog_format = 'ROW'を実行すると、そのセッションで機能します。

MySQLを停止して再起動した後、この設定を維持するにはどうすればよいですか?

注:私はMySQLのバージョン5.5.19(Moodleを使用)を使用していて、MyISAMからInnoDBにアップグレードしたばかりなので、この新しい設定が必要です。

私はこれら2つのコマンドを(個別に)my.cnfに追加しようとしました:binlog-format = ROWおよびbinlog_format = ROWで、どちらも機能しません。my.cnfを変更するたびに、MySQLを停止して再起動しました。

これを設定しないと発生するエラーは、悪質なエラーメッセージです。

デバッグ情報:ステートメントを実行できません:BINLOG_FORMAT = STATEMENTおよび少なくとも1つのテーブルが行ベースのロギングに限定されたストレージエンジンを使用しているため、バイナリログに書き込むことができません。トランザクション分離レベルがREAD COMMITTEDまたはREAD UNCOMMITTEDの場合、InnoDBは行ログに制限されます。

回答:


15

あなたの問題はあなたが指令を書いた場所から生じていると思う

[mysqld]/etc/my.cnf のヘッダーの下にオプションを配置してください。

[mysqld]
binlog_format = ROW

それを他のヘッダーの下に配置すると、mysqldプロセスはそれを認識しません。

試してみる !!!


これはうまくいった!はい、別の見出しの下にありました。
コンスタンス

0

3 binlog_formatの値

[mysqld]
binlog_format = ROW
[mysqld]
binlog_format = STATEMENT
[mysqld]
binlog_format = MIXED
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.