页面: 1
1.phpMyBackupPro
可以带压缩功能发送到远程FTP和Email,不过在本虚拟主机操作时,备份中文会出现乱码。但在godaddy备份中文时则不会出现。应该和数据库的默认编码有关,不过我按照网上的教程修改,但始终还是不能以UTF-8的编码导出。
phpMyBackupPro.rar
2.mysqldump-to-gmail
源代码下载地址:http://code.google.com/p/mysqldump-to-gmail/
原文说明:http://vlab.info/pages/mysqldump-to-gmail.html
mysqldump.rar
使用方式
請開啟 mysqldump.php 編輯以下內容:
$secret = 'secretcode'; //密碼,執行時需帶入
$from = 'your.email@maildomain.com'; //備份時使用的寄件者 email
$from_name = 'AutoBackup'; //寄件者姓名
$to = 'your.email@maildomain.com'; //收件者 email
$to_name = 'Your Name'; //收件者姓名
$dir = '/home/user/public_html/backup/'; //備份檔案存放的目錄
以下是第一組資料庫的設定:
$cfg[0]['dbhost'] = 'localhost';
$cfg[0]['dbuser'] = 'root';
$cfg[0]['dbpass'] = 'pass';
$cfg[0]['dbname'] = 'my_database1';
設定完成後,可先透過瀏覽器測試,例如:
http://vlab.info/path_to_the_script/mysqldump.php?dbid=0-code=secretcode
其中 dbid=0 表示第一組資料庫,後面的 code=secretcode 就是先前設定的密碼。執行成功的話,很快就可以收到 email 並且看到備份的附加檔喔。
如果要定時備份的話,就透過 crontab 吧,例如以下設定可在每天凌晨 3:00 進行備份:
0 3 * * * wget http://domain.com/path_to_the_script/mysqldump.php?dbid=0-code=secretcode
以上是一組資料庫的備份設定,如果有需要新增第二組、第三組...,可參考 mysqldump.php 內的說明,將 $cfg[1] 的設置開啟,完成設定後,執行時將 dbid=0 改成 dbid=1,就變成第二組的備份,依此類推。3.petermysqlbackup推荐使用
与上一款有两点区别:一:备份完成后直接发送到Email,会自动删除本地备份。二、默认是没有压缩sql格式发送的,所以需要手动设置一下,让其压缩后再发送。
打开backup.php程序,修改其中
$backupfile = $dbname . date("Y-m-d") . '.sql';
system("mysqldump -h $dbhost -u $dbuser -p$dbpass $dbname > $backupfile");$backupfile = $dbname . date("Y-m-d") . '.sql.gz';
system("mysqldump -h $dbhost -u $dbuser -p$dbpass $dbname | gzip > $backupfile");
离线
其实第二款mysqldump-to-gmail也是很不错的,就是我不会php程序,无法修改其中的参数,让其备份后自动删除,既然不会那只好使用第三款了。终于找到一款自动备份且不乱码的程序了。要能外带发送到FTP就更好了,毕竟如果数据库越来越大时,采用Email发送备份的方案就不是那么可取了。
离线
目前定时备份数据库方式:http://www.caizhengzhu.com/viewtopic.php?id=516 主要是因为很多主机不支持SMTP发送到邮件,函数被禁用了。
离线
页面: 1