HOME > 開発メモ > MySQLによるオンラインバックアップで注意すること
2014/09/03 タグ: ,

MySQLによるオンラインバックアップで注意すること

  • このエントリーをはてなブックマークに追加

MySQLによるオンラインバックアップについて。バックアップにはmysqldumpコマンドを使いますが、単純にバックアップといえども、リストア(復元)する時のことも考えてないといけません。

SPONSOR

バイナリログがどこまでかかれているか

バックアップをとったとしても、実際にリストアする際には、時間差があります。例えば今日の朝バックアップをとったとして、夜にデータが壊れてリストアする場合、朝から夜までに保存されたデータは復旧できません。そこで、バイナリログが重要になります。バイナリログには実行されたSQL文が記録されていますので、バックアップデータ+このバイナリログで補填できます。

ですので、バックアップをとる際に、その時点でバイナリログがどこまでかかれているか記録しておきます。これは–mastar-data=2オプションをつけます。

共有ロックをかける

バックアップとっている際中に更新が行われないようロックをかけます。共有ロックは参照は許可しますが、更新は行われません。ただバックアップにすごく時間がかかるデータ量だとちょっと現実的ではないかもしれません。これは–lock-all-tablesというオプションをつけます。

ということで、最終的には以下のコマンド。

mysqldump -uroot --lock-all-tables --master-data=2 > dump.sql

備えあれば憂いなし。ですね。

お役にたちましたら、メール購読もどうぞ!

 

この記事をシェアする
  • このエントリーをはてなブックマークに追加

イリテクの最新記事をお届けします

イリテクの最新情報をチェック!
  • follow us in feedly
    RSSで最新記事を読む

イリテクで開発したサービス

こちらの記事もおすすめです

SPONSER

イリテクのプロフィール
入江 慎吾
デザインエンジニア。イリテク株式会社 代表取締役。Webシステム開発、Webサイト制作、スマートフォンアプリ開発を受託で行うほか、自社企画でクラウド見積請求書作成サービス「CLOUD PAPER」を開発・運営。仕様を決めずに少ない予算でも開発をスタートできる「月額固定のシステム開発」を実施中。(もっと詳しく
開発したWebサービス
開発したアプリ
新着記事
カテゴリ/タグ