タダです.
Aurora MySQL のデータを DMS でのレプリケーションをやりたいと思い,バイナリログを有効化する機会がありました.初めてやったので設定について振り返っていきます.なお,Aurora のバージョンは 5.6.mysql_aurora.1.22.2
で確認してます.
DB クラスターパラメーターグループの binlog_format を編集する
Aurora MySQL でバイナリログを有効化する方法として,DB クラスターパラメーターグループの binlog_format
を編集する必要があります.パラメーターとしてROW/MIXED/STATEMENT
があります.変更前は下記のようになっていました.
mysql> show global variables like 'log_bin'; +---------------+-------+ | Variable_name | Value | +---------------+-------+ | log_bin | OFF | +---------------+-------+ mysql> show variables like 'binlog_format'; +---------------+-------+ | Variable_name | Value | +---------------+-------+ | binlog_format | STATEMENT| +---------------+-------+
DMS でのレプリケーションにおいてはバイナリログは ROW
で設定することがドキュメントで記載されていたので ROW
を設定しています.
Set the binlog_format parameter to "ROW".
binlog_format 設定変更後の作業
binlog_format
変更後は WRITER 側を再起動する必要があります.再起動後,再度パラメーターを確認するとlog_bin
やbinlog_format
のパラメーターが変わりバイナリログが出力されたのを確認できます.
mysql> show global variables like 'log_bin'; +---------------+-------+ | Variable_name | Value | +---------------+-------+ | log_bin | ON | +---------------+-------+ 1 row in set (0.01 sec) mysql> show variables like 'binlog_format'; +---------------+-------+ | Variable_name | Value | +---------------+-------+ | binlog_format | ROW | +---------------+-------+ 1 row in set (0.00 sec) mysql> show binary logs; +----------------------------+-----------+ | Log_name | File_size | +----------------------------+-----------+ | mysql-bin-changelog.000001 | 120 | | mysql-bin-changelog.000002 | 43424 | +----------------------------+-----------+ 2 rows in set (0.00 sec)
まとめ
Aurora MySQL でのバイナリログの有効化方法とその作業後の確認した点をまとめました.データベースでのオペレーションは経験値が低い分学びが多いので記録する記事を残していければと思います.