タグ

ブックマーク / nkjmkzk.net (1)

  • InnoDBのリカバリ機能を検証してみる at nkjmkzk.net

    Oracle, Open Source, Privateinnodbはクラッシュ時のリカバリ機能を実装しており、mysqldがクラッシュした場合やOS自体がクラッシュした場合にもしコミットされたデータがテーブルから失われていても再起動時にib_logfileからコミットされたトランザクションを読み出し、それが実データ(デフォルトだとibdata)に反映されていなければ反映させるという処理が走ります。MySQLはinnodb_flush_log_at_trx_commitの値により、1秒毎、またはコミット毎にトランザクションをログファイルにフラッシュします。 今回は以下2点について検証を行いました。 1.クライアント側から発行したクエリがクラッシュ後にどこまで復旧されているか 2.リカバリにかかる時間の測定(ログのファイルサイズとの因果関係にも言及) 1の検証についてはinnodb_fl

    masa_matya
    masa_matya 2011/07/21
    flush_log_at_trx_commitを0,1にした時の検証。やはり0にした時は1秒間に発生したトランザクション数分のデータが失われる。リカバリ時間の違いは0 or 1 によるものというより、リカバリ対象となるトランザクション数によるも
  • 1