首页 > 编程知识 正文

备份mysql的php源代码,php数据库备份

时间:2023-12-29 20:32:12 阅读:331363 作者:YYDW

本文目录一览:

求PHP被访问时备份MySQL数据库到PHP文件所在目录代码

MYSQL的数据库是存放在磁盘上的,以文件的形式,位置一般是mysql安装文件夹下的data,当然也可以通过MY.INI进行修改。那么,备份MYSQL数据库其实就是对data文件夹打包,在UNIX下可以用tar命令,在WINDOWS下可以用WINRAR等工具。所以,用PHP文件备份MYSQL数据库,本质就是PHP文件用system调用tar或者rar.exe对MYSQL的数据库文件夹进行打包,例如:

system('"c:\program files\winrar\rar.exe" a db.rar e:\mysql\data');

如何用PHP来实现MySQL备份

备份数据库并下载到本地【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; 

?

php备份恢复MYSQL数据库

1、把数据库sql文件查找 CHARACTER

替换成 CHARACTER SET utf8 或 CHARACTER = utf8

2、到phpmyadmin 创建一个新的数据库的时候应该选 整理 latin1_swedish_ci

3、到phpmyadmin 进入新建的数据库,导入数据库文件

4、用UltraEdit转换所有ANSI格式的php源码文件为UTF-8格式:File -- Conversions -- ASCII to UTF-8

5、在php源码文件中必须加入:

在head后加入

meta http-equiv="Content-Type" content="text/html; charset=UTF-8"

6、在连接数据DB的文件中找到类似一下代码

$host="localhost"; $DBname="aa"; //数据库名字$user= "root"; //用户名$passwd = ""; //密码$link = mysql_connect($host,$user,$passwd) or die ("Fail");

$db = mysql_select_db($DBname, $link) or die ("Fail"); //连接

// 要在真正query DB取出资料前,必须加入下面3行mysql_query才可以:

mysql_query("SET NAMES 'utf8'");

mysql_query("SET CHARACTER_SET_CLIENT=utf8");

mysql_query("SET CHARACTER_SET_RESULTS=utf8");

7、在php源码中, 如有应用htmlentities和htmlspecialchars时需要注意:

要似如下格式:

$chars = htmlentities($chars,ENT_QUOTES,"UTF-8");

$chars = htmlspecialchars($chars,ENT_QUOTES,"UTF-8");

如有应用addslashes()或mysql_real_escape_string()记得用以下:

$chars = stripslashes($chars);

另外如果需要的话还可设置:

1、php.ini 设定php中的语系为 (记得restart)

default_charset = "utf-8"

2、my.ini 设定MySQL中的语系为 (记得restart)

[mysqld]

init_connect='SET NAMES utf8'

default-character-set=utf8

[client]

default-character-set = utf8

本人刚接触PHP+MySQL,才疏学浅,希望能给有需要的得到帮助。

请大家指点,谢谢!

PHP mysql 备份

这个是错的呀,怎么可能输出到文件夹呢,应该下面这样才对:

$mysqlstr = "C:\AppServ\MySQL\bin\mysqldump -uroot -hlocalhost -phwzero --opt -B gba ../bak/BAK20090323.SQL"

不能备份到../bak/文件夹,必须是这个文件夹下的某个文件。

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。