2011-01-03 9 views
4

可能性の重複:
Suggestions for backing up php site and mysql db完全リモートバックアップを作成できるスクリプトはありますか?

ファイルシステムのバックアップとデータベースのバックアップを行う(好ましくはそれらを一緒にジップ)とリモートサーバーにバックアップを送信することができます任意のPHPスクリプトはありますか?

+0

ファイルシステムとデータベースのバックアップは何ですか?ウェブページ?完全なウェブサイトですか?サーバー全体?それらを送信する方法? Eメール ? FTP? HTTP? Rsync?より具体的に、あなたの環境についてもっと詳しく教えてください。例えば。多くの仮想ホストプロバイダには、ホストされたデータのバックアップを取得できる何らかの種類のWebツールがあります。 – thkala

+0

DBファイルとFTPファイルをバックアップし、一緒に混ぜていくbashスクリプトでcronを使用します。 'mysqldump'、' cp -R'、 'zip' –

答えて

2

linuxコマンドにはこれに適したツールがあります。 PHPのexec()関数を使ってlinuxコマンドにアクセスすることができます。

// db 
$db_backup_file = '/home/backup/db_'.date('Y-m-d').'.sql.gz'; 
$command = '/usr/bin/mysqldump -c -h'.DB_HOST.' -u'.DB_USER.' -p'.DB_PASS.' --default-character-set=latin1 -N '.DB_NAME.' | gzip > '.$db_backup_file; 
exec($command); 

// file structure 
$file_structure_backup_file = '/home/backup/files_'.date('Y-m-d').'.tar.gz'; 
$command = 'tar -zcf '.$file_structure_backup_file.' /home/'; 
exec($command); 

linuxコマンドオプションを確認してから、安全な環境でテストし調整することをおすすめします。ファイルをどこにでもftpまたは電子メールで送ることができます。またはあなたはcronの仕事に同じものを置くことができます。

+1

あなたは電子メールで深刻なことはできませんか? – ajreal

+0

hehehはあなたの規模によります。私は定期的に小さいデータベースのバックアップを送信するために電子メールを使用しています。 – dqhendricks

+0

まあ、私のホストはexecを許可していません... – xun

関連する問題