如何用PHP来实现MySQL备份

如何用PHP来实现MySQL备份,第1张

备份数据库并下载到本地【db_backup.php】

<?php 

// 设置SQL文件保存文件名 

$filename=date("Y-m-d_H-i-s")."-".$cfg_dbname.".sql" 

// 所保存的文件名 

header("Content-disposition:filename=".$filename) 

header("Content-type:application/octetstream") 

header("Pragma:no-cache") 

header("Expires:0") 

// 获取当前页面文件路径,SQL文件就导出到此文件夹内 

$tmpFile = (dirname(__FILE__))."\\".$filename 

// 用MySQLDump命令导出数据库 

exec("mysqldump -u$cfg_dbuser -p$cfg_dbpwd --default-character-set=utf8 $cfg_dbname > ".$tmpFile) 

$file = fopen($tmpFile, "r") // 打开文件 

echo fread($file,filesize($tmpFile)) 

fclose($file) 

exit 

?>

我一般用二种方法:

1.SQL文件数据备份

下载一个Navicat Premium,使用这个软件,正确连接并访问数据库,

点中你想要备份的数据库,按右键使用转存SQL文件,就会出现你要备份的提示框,保存即可;

若要导进则用运行SQL文件,非常方便的导入单个数据库的,但这种只适合于小数据量的数据库(50万条以下);

2.底层备份,但这种备份要求安装是同一版本的mysql才适合,否则会出现未知错误;

直接找到mysql安装目录,找到data文件夹全部拷呗到你想备份的地方即可,还原就拷回来即可。适合大数据量的备份方法!

3.至于楼主硬要用PHP备份数据的话,你可以参考phpadmin和dedecms程序备份数据的方法,但这种执行效率很低的!

数据库的自动备份,可以减轻维护者的工作量也便于系统恢复,对于比较重要的数据库,最好还是设置下自动备份。

工具/原料

navicat for mysql

mysql 5.5

方法/步骤

打开navicat客户端,连上mysql后,双击左边你想要备份的数据库。点击“计划”,再点击“新建批处理作业”。

双击上面的可用任务,它就会到下面的列表里去,代表你选择了这个任务。

点击保存,弹出个命名对话框,给这个任务取个名字,点击“确定”

点击“设置”计划任务。

弹出的对话框,选择“计划”,再点击“新建”。

这里设置为从2014年1月24号起每天早上九点备份该数据库。如果想提高备份频率、或者设置备份截止日期,请点击“高级”。

高级选项可以把备份设置的更精细,比如这里设置的是在24小时内每隔2小时就备份一次。加上前面的基本设置,任务计划就是:从2014年1月24号开始,每天九点,每隔2小时备份一次,每天的备份都持续24小时。

最后,输入电脑密码就大功告成。


欢迎分享,转载请注明来源:夏雨云

原文地址:https://www.xiayuyun.com/zonghe/65840.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-02-28
下一篇2023-02-28

发表评论

登录后才能评论

评论列表(0条)

    保存