質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
MySQL

MySQL(マイエスキューエル)は、TCX DataKonsultAB社などが開発するRDBMS(リレーショナルデータベースの管理システム)です。世界で最も人気の高いシステムで、オープンソースで開発されています。MySQLデータベースサーバは、高速性と信頼性があり、Linux、UNIX、Windowsなどの複数のプラットフォームで動作することができます。

Q&A

4回答

4198閲覧

Mysql バックアップはどのくらいの頻度でバックアップしていますでしょうか?

K_T_T_K

総合スコア231

MySQL

MySQL(マイエスキューエル)は、TCX DataKonsultAB社などが開発するRDBMS(リレーショナルデータベースの管理システム)です。世界で最も人気の高いシステムで、オープンソースで開発されています。MySQLデータベースサーバは、高速性と信頼性があり、Linux、UNIX、Windowsなどの複数のプラットフォームで動作することができます。

0グッド

1クリップ

投稿2014/11/08 08:34

Mysqlで定期的にバックアップするシェルスクリプトを書こうとしているのですが、皆様はどのくらいの頻度でバックアップしていますでしょうか?

毎日とかでしょうか?

また、バックアップするにあたって参考になるアドバイスあれば教えて頂けたら幸いです。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答4

0

mysqldump でバックアップする場合は --single-transaction を付けておかないとバックアップ中にデータベースのすべてのテーブルがロックされます(ただしデータベース内のテーブルがすべて InnoDB である必要があります)。

レプリケーションを利用している場合、--master-data=2 を付けておくとダンプ時点のバイナリログの位置がコメントで書き込まれるので便利なことがあります。

投稿2014/11/09 15:10

ngyuki

総合スコア4514

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

バックアップを取るということは、データが壊れた時復元したいという要求があるということです。

その要求を整理しなければ、適切なバックアップのタイミングはつかめません。
たとえば、1日一回しか更新しないブログデータであれば、最短で1日一回取ればいいですし、お金のやり取りを記録する取引データであれば、できるだけ短い間隔でバックアップを取りたいという要求があがるはずです。

バックアップを取ろうとするデータの特性を確認し、その確認内容に合わせてバックアップポリシーを決めるのが一般的です。そのバックアップポリシーに沿って、バックアップ方法も検討します。

ちなみに、私の運営するサイトでは、バックアップを取らないサービスがあります。
データが意味を持つな期間が5分程度と短く、バックアップを取るコストと5分のデータが欠損する損害のバランスを考え、バックアップを取らない方針としました。

データ特性を開示すれば、適切なアドバイスが貰えるかもしれません。
ご検討を。

投稿2017/02/05 13:42

退会済みユーザー

退会済みユーザー

総合スコア0

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

必ず週1回はとっています。
そんなにデータ量がない場合は毎日バックアップを取っています。

投稿2017/02/05 13:31

prius

総合スコア8

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

ちょっと方向性が違う話しですが、レプリケーション機能をバックアップ用途で使っていたりします。世代管理はできないですが…

投稿2014/11/08 10:26

TaMaMhyu

総合スコア1356

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

ngyuki

2014/11/09 15:19

バックアップのためのスレーブから定期的に mysqldump することで、本番機に余計な負荷をかけずに複数世代のダンプを得たりできるかもしれません。 もしくは、スレーブがバックアップ専用なら、スレーブを一時的に停止 → MySQL のデータディレクトリをコピー → スレーブを再開、とか あるいは、スレーブで `log-slave-updates` を有効にしてスレーブでもバイナリログを吐き出すようにしておけば、バイナリログを用いて任意の時点へロールフォワードができるので、実質世代バックアップのようになるかもしれません。
TaMaMhyu

2014/11/10 02:55

スレーブからのダンプの方針(マスタに負荷をかけない)は実運用で見かけたことがあった気がします。 マスタが壊れた時の切り替え用にレプリケーションを使っています。自動フェイルオーバーではないですが…ミッションクリティカルなシステムではないので、ゆるい対応をしています。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問