mysql4.0を使用しています。
データーベースのバックアップをサーバー側で取りたいと思って色々調べたら
1.mysqldump
2.mysqlhotcopy
3./var/db/mysql/* をcopy
など色々あり、どれを使えばいいのかよくわかりません。リストアの方法も1と2の違いがよく分かりません。
1は何から何までフルバックアップできるそうですが、2ではデーターだけなんでしょうか?
また、3の場合も、コピーをとっておいたものをディレクトリごと/var/db/mysql/に戻すだけで、データーベースの全ての構造、データーなんかが再現されるのでしょうか?それなら3が一番簡単な気もしますが、mysqldをstopしてからやらなければならず、止めずにやるなら2だともありました。
私は以下のポリシーでバックアップを取りたいと考えてるのですが、どの方法でバックアップ&リストアするのがよいかアドバイスお願いします。
1.フルバックアップは週に1度。自動。mysqldは止めない。
2.日々更新されるデーターは毎日データーバックアップを自動でとりたい。mysqldは止めない。 (作成されたバックアップファイル事体は、日に1度、別サーバーへ転送されることになっていますので、ここでは同一サーバー内にバックアップファイルができればよい)
No.2ベストアンサー
- 回答日時:
1)通常の環境であればリストア時は/var/db/mysql/以下のコピーでOKです。
2)単純に/var/db/mysqlをコピーする方法はバックアップ先が破壊される可能性や一貫性のない場合があるのでバックアップとしての信頼性がありません。成功する可能性もないとはいえませんが・・・
3)物理バックアップはDBクラッシュ時のDBまるごとのリストアで使用しますが、論理バックアップであるmysqldumpはSQL文かテキストファイルに落とすので、手作業による部分リストアが可能になり、何かの時にあれば便利です。
大変わかりやすいご説明ありがとうございました。
とりあえずmysqlhotcopyを1日1回、mysqldumpを週1回自動でとるようにしてみました。
まだまだ初心者ですので、皆様のご指導本当に感謝いたします。
No.1
- 回答日時:
まず、高機能エンジンのInnoDBであればoracleのようなオンラインバックができるのですが、MyISAM テーブルではオンラインで可能ですが、原則テーブルをロックしてバックアップする擬似オンラインバックアップしかできません。
おそらく環境は後者のようですからそれを前提でいくと以下のようなバックアップ運用がよいと思われます。
・論理バックアップ
復旧の際以外にも必要になることが多々あるのでmysqldumpで定期的にデータバックアップ。
テーブル単位のロックでデータベース全体では一貫性がないバックアップがよいが、時間が許されるなら全テーブルロックでもよい。
・物理バックアップアップ
mysqlhotcopyを実行する。但しバックアップ中は全テーブル書き込みロックがかかるので、書き込み処理のない時間帯で行う。
ちなみに、中身はperlでlock,flush,tar,unlockをやっていてcpコマンドと同様の物理バックアップをやっている。
早々にご回答ありがとうございます。
とりあえず手動でmysqlhotcopyをしてみましたら、/var/db/mysql/以下のディレクトリ(データーベース)がコピーされていました。
リストアするときは、このコピーファイルを、/var/db/mysql/以下に戻してやるだけでいい訳ですよね。
実は今単純に自動でcpで/var/db/mysqlをコピーするシェルが毎日動いてたのですが、これは、危険なことだったんでしょうか?mysqlhotcopyの場合は、一応ロックをかけるわけですが、cpだとロックがかかってませんよね?
あと、mysqldumpはsql文を含んだバックアップ物として、一応あった方がいいという解釈でよろしいのでしょうか?
色々お聞きして申し訳ございませんが、ご指導のほどいただけましたら幸いです。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・人生のプチ美学を教えてください!!
- ・10秒目をつむったら…
- ・あなたの習慣について教えてください!!
- ・牛、豚、鶏、どれか一つ食べられなくなるとしたら?
- ・【大喜利】【投稿~9/18】 おとぎ話『桃太郎』の知られざるエピソード
- ・街中で見かけて「グッときた人」の思い出
- ・「一気に最後まで読んだ」本、教えて下さい!
- ・幼稚園時代「何組」でしたか?
- ・激凹みから立ち直る方法
- ・1つだけ過去を変えられるとしたら?
- ・【あるあるbot連動企画】あるあるbotに投稿したけど採用されなかったあるある募集
- ・【あるあるbot連動企画】フォロワー20万人のアカウントであなたのあるあるを披露してみませんか?
- ・映画のエンドロール観る派?観ない派?
- ・海外旅行から帰ってきたら、まず何を食べる?
- ・誕生日にもらった意外なもの
- ・天使と悪魔選手権
- ・ちょっと先の未来クイズ第2問
- ・【大喜利】【投稿~9/7】 ロボットの住む世界で流行ってる罰ゲームとは?
- ・推しミネラルウォーターはありますか?
- ・都道府県穴埋めゲーム
- ・この人頭いいなと思ったエピソード
- ・準・究極の選択
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Access レプリカの具体的な使い方
-
データベースが大きすぎてリス...
-
警察はスマホに保存した動画や...
-
ACCESSのデータをWebブラウザで...
-
postgresql についてです
-
復元に異常に時間がかかる
-
エクセルのフィルタ抽出が固まる
-
【DB】同じトランザクション内...
-
ファイルメーカーで変更禁止を...
-
一つのテーブルだけを復元(リス...
-
SQLServerのDBのうちテーブルを...
-
OracleのROWIDについて…
-
復旧中のデータベースについて
-
Accessdでの「トランザクション...
-
accessの処理が遅い
-
過去データに対するデータベー...
-
SAPのSPROって何の略ですか?
-
WindowsFirewallのログの保存先...
-
SQLServer2000でのトランザクシ...
-
マスタメンテとは?
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Access レプリカの具体的な使い方
-
SQL Server Management Studio ...
-
SQL Server エージェント ジョ...
-
復元を取り消したい
-
データベースが大きすぎてリス...
-
Xサーバーのバックアップで全サ...
-
SQLServerのバックアップ
-
SQLサーバ2000のサーバ機移動の...
-
MySQL稼働中にDBのバックアッ...
-
SQLserver2000 StandardEdition...
-
テーブルのエクスポートに関して
-
マクロ 日時の付いたファイル...
-
複数のデータベースのバックアップ
-
SQL Server2005の差分バックア...
-
データベースの移行
-
SQL Server2000 バッチでデータ...
-
Oracleのバックアップについて
-
【DB】同じトランザクション内...
-
エクセルのフィルタ抽出が固まる
-
警察はスマホに保存した動画や...
おすすめ情報