トランザクションログとバイナリログの違いは何ですか?


9

SQL Serverショップから来て、今はMySQLを使用しています。

MySQLのバイナリログとMSSQLのトランザクションログの違いは何ですか?

これまでの見通しでは、MSSQLのようにデータベースごとのトランザクションログとは対照的に、MySQLインスタンスごとに1つのバイナリログしかないようです。


2つの間の比較を見ることは素晴らしいです。
Ryan

この質問には別の回答があります。dba.stackexchange.com
LawrenceLi

回答:


5

質問のMySQL部分のみに回答する

バイナリログには、完了したSQLステートメントが記録されます。多くのバイナリログを保持できます。デフォルト設定では、バイナリログは1Gマークでローテーションします(expire_logs_daysおよびmax_binlog_sizeを参照)。

次のいずれかを実行すると、バイナリログを表示できます。

SHOW BINARY LOGS;
SHOW MASTER LOGS;

現在のマスターログは常にリストの最後です。現在のものである最後のバイナリログだけを表示するには、次のコマンドを実行します。

SHOW MASTER STATUS;

InnoDBストレージエンジンとトランザクションに関して

  • InnoDBテーブルスペースファイルとも呼ばれるメタデータファイル(デフォルトでは、データページ、インデックスページ、テーブルメタデータ、およびMVCC情報を保持するibdata1 )があります。
  • 複数のibdataファイルを持つことができます(innodb_data_file_pathを参照)
  • REDOログ(ib_logfile0およびib_logfile1)があります。
  • 3つ以上のREDOログを持つことができます(innodb_log_files_in_groupを参照)
  • innodb_file_per_tableが無効になっている場合は、データとインデックスを複数のibdataファイルに分散できます
  • データとインデックスページをibdataから個別のテーブルスペースファイルに分離できます(これの設定方法については、innodb_file_per_tableおよびStackOverflow Postを参照してください)。

ああ、そうですね、Rolando
Ryan
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.