我有一个用codeigniter开发的网站。
我想知道如何通过php备份我的网站[文件夹,文件等]。
答案 0 :(得分:8)
您可以使用Shel Exec:http://php.net/manual/en/function.shell-exec.php
这允许你做的是通过php脚本运行shell命令。
<?php
function backup()
{
shell_exec("tar -cvf batckup.tar.gz /var/www/* ");
}
backup();
?>
脚本需要权限,所以chmod它。
这将是一个粗略的方法。另一个是建立一个cronjob ..
简单的脚本:
#!/bin/bash
cd /www/var/
tar zcf /home/sh/backup-`date +%Y%m%d`.tar.gz backup
请务必向脚本添加可执行权限:
chmod +x /home/sh/backup.sh
然后使用crontab -e命令添加相关的crontab条目:
0 13 * * 2 /home/sh/backup.sh
这是一个每周备份,您可以在此处查看时间格式http://www.nncron.ru/help/EN/working/cron-format.htm
然后你留下了备份:
backup-20110719.tar.gz
对于您提到的数据库
15 2 * * * root mysqldump -u root -pPASSWORD --all-databases | gzip > /home/backup/databaseBackup_`data ' %m-%d-%Y'`.sql.gz
答案 1 :(得分:3)
你必须备份: