单文件就可实现mysql数据库备份,并且生成.sql后缀。无需登录phpMyAdmin在导出数据
- <?php
- // 备份数据库
- $T_Host = "localhost"; //数据库地址
- $user = ""; //数据库账号
- $password = ""; //数据库密码
- $dbname = ""; //数据库名称
- // 这里的账号、密码、名称都是从页面传过来的
- if (!mysql_connect($host, $user, $password)) // 连接mysql数据库
- {
- echo '数据库连接失败,请核对后再试';
- exit;
- }
- if (!mysql_select_db($dbname)) // 是否存在该数据库
- {
- echo '不存在数据库:' . $dbname . ',请核对后再试';
- exit;
- }
- mysql_query("set names 'utf8'");
- $mysql = "set charset utf8;\r\n";
- $q1 = mysql_query("show tables");
- while ($t = mysql_fetch_array($q1))
- {
- $table = $t[0];
- $q2 = mysql_query("show create table `$table`");
- $sql = mysql_fetch_array($q2);
- $mysql .= $sql['Create Table'] . ";\r\n";
- $q3 = mysql_query("select * from `$table`");
- while ($data = mysql_fetch_assoc($q3))
- {
- $keys = array_keys($data);
- $keys = array_map('addslashes', $keys);
- $keys = join('`,`', $keys);
- $keys = "`" . $keys . "`";
- $vals = array_values($data);
- $vals = array_map('addslashes', $vals);
- $vals = join("','", $vals);
- $vals = "'" . $vals . "'";
- $mysql .= "insert into `$table`($keys) values($vals);\r\n";
- }
- }
- //存放路径,默认存放到该文件所在目录
- $filename = $dbname . date('Ymjgi') . ".sql"; //文件命名
- $fp = fopen($filename, 'w'); //以写入方式打开文件,文件不存在则创建
- fputs($fp, $mysql); //写入内容
- fclose($fp); //关闭一个打开文件
- echo "数据备份成功";
- ?>
- THE END -
最后修改:2016年6月30日
非特殊说明,本博所有文章均为博主原创。
如若转载,请注明出处:http://dcoet.com/wordpress/1244.html
共有 0 条评论