MySQLの質問です。

とあるdatabaseをエクスポートした場合のファイルサイズを事前に調べる方法はありませんか?
要は、ファイルシステム・フルを起こさずにエクスポートできるかを確認したいという意図です。
バージョンは、3.23.xxです。

回答の条件
  • 1人1回まで
  • 登録:2006/04/27 22:53:06
  • 終了:2006/04/28 13:54:52

ベストアンサー

id:ohsaruman No.2

ohsaruman回答回数9ベストアンサー獲得回数12006/04/28 13:44:32

ポイント70pt

SQL文でshow table statusを実行して表示されるData_lengthとIndex_lengthの合計が mysqldumpで出力されるファイルの大きさとおおむね同程度です。

 あくまで目安としての方法ですので、保証できるようなものではありません。

 my.cnfにあるdatadirにあるファイルがデータベース本体なので、もしこの場所を直接見ることができるのであれば、ダンプするよりもここのファイルをコピーするのが確実です。

 蛇足ながら、ハードディスク残量が厳しくて、うかつにダンプするとDiskFullによりなにもできない状況になるのを避けるためのちょっとした知恵です。

  •  mysqlの出力にgzipをかませると、ファイルサイズがおおむね1/4になります。
    •  mysqldump db名 | gzip > dump.sql.gz
  • いちどにデーターベース全体をダンプせず、テーブルごとにダンプすれば、危険が減ります。
  • 該当サーバーのmysqlのポートを開いておいて、別のサーバーからダンプすれば容量におびえずにダンプできます。
id:P-mako

ご回答ありがとうございます。

すごく的を得た内容でした。そうですね。データベース本体のファイルパスを質問するのが良かったということですね。

2006/04/28 13:54:11

その他の回答(1件)

id:llusall No.1

llusall回答回数505ベストアンサー獲得回数612006/04/28 09:24:48

ファイルサイズを予想してみたらいかがでしょうか?

例えば、

1000件エクスポートしたファイルサイズを取得しておいて、これを基準値にします。

今回のレコード件数と基準値からファイルサイズを予想します。

基準値はあらかじめ取得しておいた値を使い回す方法。

毎回、ダミーでどこかに出力してみて取得しなおす方法などがあると思います。

その他、前回あるいは以前のエクスポートしたファイルサイズ・レコード件数を基準にし、

今回のレコード件数と比較して予想するとか。


いずれにせよ、予想のアイデア、チューニング次第で、より確からしいファイルサイズを

求めることができると思いますが、いかがでしょうか?

id:P-mako

> いずれにせよ、予想のアイデア、チューニング次第で、より確からしいファイルサイズを

> 求めることができると思いますが、いかがでしょうか?

回答ありがとうございます。

ですが、そういう方法なら想定内です。

質問文が言葉足らずだったのでしょうか。

2006/04/28 11:21:33
id:ohsaruman No.2

ohsaruman回答回数9ベストアンサー獲得回数12006/04/28 13:44:32ここでベストアンサー

ポイント70pt

SQL文でshow table statusを実行して表示されるData_lengthとIndex_lengthの合計が mysqldumpで出力されるファイルの大きさとおおむね同程度です。

 あくまで目安としての方法ですので、保証できるようなものではありません。

 my.cnfにあるdatadirにあるファイルがデータベース本体なので、もしこの場所を直接見ることができるのであれば、ダンプするよりもここのファイルをコピーするのが確実です。

 蛇足ながら、ハードディスク残量が厳しくて、うかつにダンプするとDiskFullによりなにもできない状況になるのを避けるためのちょっとした知恵です。

  •  mysqlの出力にgzipをかませると、ファイルサイズがおおむね1/4になります。
    •  mysqldump db名 | gzip > dump.sql.gz
  • いちどにデーターベース全体をダンプせず、テーブルごとにダンプすれば、危険が減ります。
  • 該当サーバーのmysqlのポートを開いておいて、別のサーバーからダンプすれば容量におびえずにダンプできます。
id:P-mako

ご回答ありがとうございます。

すごく的を得た内容でした。そうですね。データベース本体のファイルパスを質問するのが良かったということですね。

2006/04/28 13:54:11

コメントはまだありません

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

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

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

絞り込み :
はてなココの「ともだち」を表示します。
回答リクエストを送信したユーザーはいません