データ量の大きなDBのバックアップについて。

Mysqlのデータベースをバックアップを取るために、phpMyBackupProを使用しています。phpMyAdminも使います。

これらで大きなデータベースをエクスポートやバックアップを取ろうとすると、phpのメモリ制限?に引っかかり処理をすることができません。
「Fatal error: Allowed memory size of 33554432 bytes exhausted (tried
to allocate 31528269 bytes)」
このようなメッセージが出ます。

何か他のツールなどを使用してもいいのですが、大きなデータベースのバックアップをする方法はないでしょうか?

また、通常これらの場合、どうやってバックアップをとっているものなのでしょうか?SQL→ZIPしたファイルを取っておくようなことでは効率が悪いのでしょうか?

※レンタルサーバのため、ルート権限はありません。コマンド、htaccessでのphpの設定変更もできないそうです。

回答の条件
  • URL必須
  • 1人2回まで
  • 登録:
  • 終了:2007/04/30 13:05:03
※ 有料アンケート・ポイント付き質問機能は2023年2月28日に終了しました。

回答1件)

id:tobeoscontinue No.1

回答回数220ベストアンサー獲得回数59

ポイント60pt

>「Fatal error: Allowed memory size of 33554432 bytes exhausted (tried to allocate 31528269 bytes)」このようなメッセージが出ます。

phpの初期設定は8Mなので32Mはレンタルサーバとしてはいい方ではないでしょうか。

phpMyBackupProは使ったことはないのですがphpMyAdminでエクスポートは数度行いました。ただデータ量がたいしたことがないのであまり参考にならないかもしれませんが。

phpMyAdminでエクスポートする際はデータベース単位ではなく、テーブル単位でしてみてはどうでしょう。またデータベース単位でエクスポートした場合、権限が無いとインポートできない(インポートというよりは新規に作成という形なのでデータベースを作成する権限がないため)と思います。

>通常これらの場合、どうやってバックアップをとっているものなのでしょうか?SQL→ZIPしたファイルを取っておくようなことでは効率が悪いのでしょうか?

データ量が多かったり、運用的なものであれば別にレンタルサーバなどを借りてミラーリングするようにしてバックアップはしないという方法もあるのではと思います。

http://q.hatena.ne.jp/1177300848

id:dingding

ミラーリングだけでバックアップしないものなんですか?なるほど。

ただ、ハードウェア的な障害対策だけでなく、人為的なデータ操作のミスなどには、ミラーリングでは対応できないので、バックアップはやはり必要ですよね?

2007/04/30 07:03:39
  • id:tobeoscontinue
    >ミラーリングだけでバックアップしないものなんですか?
    しないということではなく、そうゆう考えもあるということで提示してみました。

    私もバックアップをとらないというのは不思議でしたが
    http://jp.sun.com/communities/users/0605/feature02.html
    を読んで、膨大なデータであけば、取らないという考えもありだなぁと思うようになりました。

    「データ量の大きなDBのバックアップ」ということだったのでバックアップ作業が大変だろうから同じ効果で手間のかからない方法として提示してみました。

    >バックアップはやはり必要ですよね?
    バックアップは必要です。それに間違いはないでしょう。

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

回答リクエストを送信したユーザーはいません