一、备份数据库并下载到本地

// 设置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;

二、还原数据库

【数据库SQL文件】:

// 我的数据库信息都存放到config.php文件中,所以加载此文件,如果你的不是存放到该文件中,注释此行即可;

require_once((dirname(__FILE__).'/../../include/config.php'));

if ( isset ( $_POST['sqlFile'] ) )

{

$file_name = $_POST['sqlFile']; //要导入的SQL文件名

$dbhost = $cfg_dbhost; //数据库主机名

$dbuser = $cfg_dbuser; //数据库用户名

$dbpass = $cfg_dbpwd; //数据库密码

$dbname = $cfg_dbname; //数据库名

set_time_limit(0); //设置超时时间为0,表示一直执行。当php在safe mode模式下无效,此时可能会导致导入超时,此时需要分段导入

$fp = @fopen($file_name, "r") or die("不能打开SQL文件 $file_name");//打开文件

mysql_connect($dbhost, $dbuser, $dbpass) or die("不能连接数据库 $dbhost");//连接数据库

mysql_select_db($dbname) or die ("不能打开数据库 $dbname");//打开数据库

echo "

正在清空数据库,请稍等....
";

$result = mysql_query("SHOW tables");

while ($currow=mysql_fetch_array($result))

{

mysql_query("drop TABLE IF EXISTS $currow[0]");

echo "清空数据表【".$currow[0]."】成功!
";

}

echo "
恭喜你清理MYSQL成功
";

echo "正在执行导入数据库操作
";

// 导入数据库的MySQL命令

exec("mysql -u$cfg_dbuser -p$cfg_dbpwd $cfg_dbname < ".$file_name);

echo "
导入完成!";

mysql_close();

}

php 还原mysql_PHP备份/还原MySQL数据库的代码相关推荐

  1. mysql meb_教你如何恢复使用MEB备份的MySQL数据库

    恢复使用MEB备份的MySQL数据库,执行一个普通备份 [root@test bin]# ./mysqlbackup --defaults-file=/service/mysql5.5/my.cnf ...

  2. meb备份mysql_恢复使用MEB备份的MySQL数据库

    恢复使用MEB备份的MySQL数据库,执行一个普通备份 [root@test bin]# ./mysqlbackup --defaults-file=/service/mysql5.5/my.cnf ...

  3. Linux自动备份MySQL数据库脚本代码

    Linux自动备份MySQL数据库脚本代码 下面这段Linux的Shell脚本用于每日自动备份MySQL数据库,可通过Linux的crontab每天定时执行 在脚本中可设置需要备份的数据库表清单,并且 ...

  4. mysql 压缩备份_备份压缩mysql 数据库

    下面是编程之家 jb51.cc 通过网络收集整理的代码片段. 编程之家小编现在分享给大家,也给大家做个参考. #!/bin/bash shijie=`date +%Y%m%d` backRenRenD ...

  5. meb备份mysql_教你如何恢复使用MEB备份的MySQL数据库【第1/3页】

    恢复使用MEB备份的MySQL数据库,执行一个普通备份[root@test bin]# ./mysqlbackup --defaults-file=/service/mysql5.5/my.cnf - ...

  6. php连接数据库语言,PHP语言连接MYSQL数据库实例代码

    本文主要向大家介绍了PHP语言连接MYSQL数据库实例代码,通过具体的内容向大家展示,希望对大家学习php语言有所帮助. 现在做的项目需要php连接mysql数据库,虽然之前学过,但是现在基本上都给忘 ...

  7. mysql中php编程实例_PHP连接MYSQL数据库实例代码

    现在做的项目需要php连接mysql数据库,虽然之前学过,但是现在基本上都给忘了,之后通过查找相关资料找到了解决方法,下面小编把具体方法分享在聚米学院平台供大家学习. 具体代码如下所示: <?p ...

  8. java连接mysql数据库 R_Java连接Mysql数据库详细代码实例

    这篇文章主要介绍了Java连接Mysql数据库详细代码实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 隔了一段时间没连过数据库,代码都忘记了,网 ...

  9. php mysql表单源码_PHP表单数据写入MySQL数据库的代码

    废话不多说了,直接给大家贴代码了,具体代码如下所示: if(!isset($_POST['submit'])){ //如果没有表单提交,显示一个表单 ?> 国家: 动物名称(英文): 动物名称( ...

  10. mysql备份与还原-mysqldump备份、mysql与source还原

    以下都以在linux操作系统上的mysql为例 mysqldump备份 mysqldump实际就是将数据库中的数据转化为建库.建表和插入记录的sql语句 1.备份一个数据库 [或其中几个表],不指定表 ...

最新文章

  1. LeetCode 152. Maximum Product Subarray--动态规划--C++,Python解法
  2. 云时代看CRM如何引领企业成功?
  3. 【转】React Vue MVC MVVM MVP
  4. 塑料浮船坞行业调研报告 - 市场现状分析与发展前景预测
  5. 需求文档2_The Battle of Polytopia
  6. win10系统无法登录ftp服务器失败,win10电脑下ftp连接失败怎么解决
  7. k均值聚类算法原理和TensorFlow实现
  8. CentOS 安装NTFS-3G,支持NTFS分区的方法
  9. 如何在Java中以编程方式阅读,添加或删除PPT中的幻灯片便笺?
  10. 数字信号处理公式变程序(四)——巴特沃斯滤波器(下)
  11. Joda-Time 操作常用时间函数
  12. 洛谷P2006 赵神牛的游戏
  13. 容器-Docker《三》容器管理
  14. windows CE 4.2、5.0、6.0下载地址
  15. Windform对sql数据库进行操作
  16. truncate函数
  17. 文献记录(part109)--Self-Representation Based Unsupervised Exemplar Selection in a Union of Subspaces
  18. C/C++ 数组的初始化
  19. google的地址搜索
  20. 华为云服务器安全组端口开发

热门文章

  1. jQuery Callback 方法
  2. 源码装置vsftpd
  3. 美味爱读提供一种崭新的阅读方式
  4. Real World Haskell 第四章 函数式编程
  5. R语言实现常用的5种分析方法(主成分+因子+多维标度+判别+聚类
  6. 几个北大和南开学霸的公众号,值得学习
  7. linux下ftp权限控制
  8. ES6 String和Number扩展
  9. lua绑定c++的时候常见得错误
  10. Win7下安装Flash低版本