2012-01-31 7 views
6

現在のシステムでMySQLデータベースをバックアップする必要があります。私はシェルスクリプトを使ってcronジョブでmysqldumpコマンドを使用しています。ここでMySQLバックアップのベストプラクティス

は、私が何をすべきかおおよそ次のとおりです。

#!/bin/bash 

fileName=$(date +%H-%M) 
mysqldump -ubackup -hserver1.local.com -A database1 > /backup/$filename.sql 

これが完了するまでに約1時間を取るので、私の質問はこれです:

私は私がすべきかどうかを知りたいので、データを圧縮する必要があります最初に純粋なsqlとしてファイルをバックアップしてから圧縮するか、mysqldumpコマンドからすぐに圧縮する必要がありますか?

答えて

8

中間ディスク領域の使用量を減らすために、あなたはオンザフライで圧縮することができますが:

mysqldump (options) | bzip2 -c > /backup/$filename.sql.bz2 

これは、あなたが全体をファイルに圧縮されていないSQLデータを記述する必要があり、その後、戻って読んでいないことを意味しますそれを圧迫する。

+1

中間ディスク容量を減らすために+1 –

+0

-cは何を意味していますか? –

+0

@WestonCarlson:[標準出力に圧縮する](http://linux.die.net/man/1/bzip2) –

関連する問題