网站首页 > 文章中心 > 其它

php+数据库自动备份

作者:小编 更新时间:2023-09-27 13:35:18 浏览量:326人看过

如何用PHP来实现 备份 mysql 数据库的 功能 ? 就是鼠标单击 让此项目的数据库自动保存到相应的文件夹?

我想到的有三种思路吧

①如果服务器允许mysqldump 并且没有禁止PHP的shell_exec()这个函数的话

直接在PHP里面执行mysqldump就可以了.

select * into outfile '路径/文件名' from 表名

缺点是这样得到的是纯数据,恢复数据的时候你需要额外再写脚本

都说到这里了大家应该明白我不推荐用PHP来实现mysql数据的备份,如果可能的话还是用mysqldump吧

关于PHP+Mysql数据库自动备份的问题

先说代码,我看了一下,代码没什么问题,至于你说的不备份,原因可能如下:

查询无结果,测试办法是在最外层的那个while语句结束后输出查询语句,即:

while?($t?=?mysql_fetch_array($q1))

{

//里面的代码

}

echo?$mysql;//今天这一节输出查询结果,如果结果正常,则说明查询有结果

$filename?=?"autobackup.sql";?//存放路径,默认存放到项目最外层

然后就是另一个问题了,目标文件不可写,你可以参考下面这样的代码

if(!file_exists($filename)?||?is_writable($filename))//如果文件不存在或可写

$fp?=?fopen($filename,?'w');//打开或创建可写文件

$mysql=str_replace("','','');","',null,null);",$mysql);

fputs($fp,?$mysql);//写入

fclose($fp);

else

echo?"文件?$filename?不存在或不可写";

如果尝试发现仍有问题,请再追问

如何使用PHP自动备份数据库

使用mysqldump函数

dbname参数表示数据库的名称

BackupName.sql参数表设计备份文件的名称,文件名前面可以加上一个绝对路径.通常将数据库被分成一个后缀名为sql的文件.

备份数据库的主要过程:

切换到对应的数据库;

使用show create table ?tableName,获得表结构,写到文件中;

然后查询所有的表数据,循环生成相对应sql语句,写到文件中;

试运行生成的sql文件.

以上就是土嘎嘎小编为大家整理的php+数据库自动备份相关主题介绍,如果您觉得小编更新的文章只要能对粉丝们有用,就是我们最大的鼓励和动力,不要忘记讲本站分享给您身边的朋友哦!!

版权声明:倡导尊重与保护知识产权。未经许可,任何人不得复制、转载、或以其他方式使用本站《原创》内容,违者将追究其法律责任。本站文章内容,部分图片来源于网络,如有侵权,请联系我们修改或者删除处理。

编辑推荐

热门文章