php导出.sql文件,mysql数据库备份程序
发布:smiling 来源: PHP粉丝网 添加日期:2014-09-12 09:44:42 浏览: 评论:0
- <?php
- $database='';//数据库名
- $options=array(
- 'hostname' => '',//ip地址
- 'charset' => 'utf8',//编码
- 'filename' => $database.'.sql',//文件名
- 'username' => '',
- 'password' => ''
- );
- mysql_connect($options['hostname'],$options['username'],$options['password'])or die("不能连接数据库!");
- mysql_select_db($database) or die("数据库名称错误!");
- mysql_query("SET NAMES '{$options['charset']}'");
- $tables = list_tables($database);
- $filename = sprintf($options['filename'],$database);
- $fp = fopen($filename, 'w');
- foreach ($tables as $table) {
- dump_table($table, $fp);
- }
- fclose($fp);
- //下载sql文件
- $file_name=$options['filename'];
- Header("Content-type:application/octet-stream");
- Header("Content-Disposition:attachment;filename=".$file_name);
- readfile($file_name);
- //删除服务器上的sql文件
- unlink($file_name);
- exit;
- //获取表的名称
- function list_tables($database)
- {
- $rs = mysql_list_tables($database);
- $tables = array();
- while ($row = mysql_fetch_row($rs)) {
- $tables[] = $row[0];
- }
- mysql_free_result($rs);
- return $tables;
- }
- //导出数据库
- function dump_table($table, $fp = null)
- {
- $need_close = false;
- if (is_null($fp)) {
- $fp = fopen($table . '.sql', 'w');
- $need_close = true;
- }
- $a=mysql_query("show create table `{$table}`");
- $row=mysql_fetch_assoc($a);fwrite($fp,$row['Create Table'].';');//导出表结构
- $rs = mysql_query("SELECT * FROM `{$table}`");
- while ($row = mysql_fetch_row($rs)) {
- fwrite($fp, get_insert_sql($table, $row));
- }
- mysql_free_result($rs);
- if ($need_close) {
- fclose($fp);
- }
- }
- //导出表数据
- function get_insert_sql($table, $row)
- {
- $sql = "INSERT INTO `{$table}` VALUES (";
- $values = array();
- foreach ($row as $value) {
- $values[] = "'" . mysql_real_escape_string($value) . "'";
- }//开源代码phpfensi.com
- $sql .= implode(', ', $values) . ");";
- return $sql;
- }?>
Tags: php导出 sql mysql数据备份
相关文章
- ·php导出生成excel表格几种方法介绍(2014-08-01)
- ·php导出数据到csv文件(2014-08-17)
- ·php实现数据库导出或导出成sql文件代码(2015-04-15)
- ·php导出word格式数据的代码实例(2020-07-06)
- ·php导出excel格式数据问题(2020-10-26)
- ·php把数据表导出为Excel表的最简单、最快的方法(不用插件)(2020-12-12)
- ·PHP 导出Excel示例分享(2021-04-03)
- ·PHP使用mysqldump命令导出数据库(2021-05-22)
- ·php导出生成word的方法(2021-07-01)
- ·PHP导出Excel实例讲解(2021-07-07)
- ·PHP中使用mpdf 导出PDF文件的实现方法(2021-10-31)
- ·在PHP中全面阻止SQL注入式攻击(2013-11-13)
- ·用PHP连MySQL和Oracle数据库性能比较(2013-11-27)
- ·解决php mysql乱码问题(2013-11-28)
- ·Warning: mysql_fetch_array():(2013-11-28)
- ·MySQL+PHP产生乱码原因分析与解决方法(2013-11-28)
推荐文章
热门文章
最新评论文章
- 写给考虑创业的年轻程序员(10)
- PHP新手上路(一)(7)
- 惹恼程序员的十件事(5)
- PHP邮件发送例子,已测试成功(5)
- 致初学者:PHP比ASP优秀的七个理由(4)
- PHP会被淘汰吗?(4)
- PHP新手上路(四)(4)
- 如何去学习PHP?(2)
- 简单入门级php分页代码(2)
- php中邮箱email 电话等格式的验证(2)