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

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

}

标签:tmpFile,cfg,备份,mysql,echo,header,MySQL,PHP,数据库

来源: https://www.cnblogs.com/dennyblue/p/12916572.html

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

  1. mysql 端口 php_php - 如何修改mysql端口并对外开放。。

    phpcn_u15822017-05-16 13:06:411楼 我刚才看看下,my.ini是mysql的配置文件,端口里面改了应该就可以了. [client] port=3306 [mysql] d ...

  2. 阿里云 mysql 导出数据库备份_导出整个mysql数据库备份

    mysql和mssql的备份和恢复数据的方法 mysql数据库的备份方法可以用 导出要用到MySQL的mysqldump工具,基本用法是: shell> mysqldump [OPTIONS] ...

  3. qldump 备份所有表_mysqldump 所有数据库

    Mysqldump工具的详细介绍 说明:mysqldump是数据库用来备份和数据转移的一个工具,一般在数据量很小的时候(几个G)可以用于备份.当数据量比较大的情况下,就不建议用mysqldump工具进 ...

  4. php mysql备份代码_PHP备份/还原MySQL数据库的代码

    以下是代码: 一.备份数据库并下载到本地[db_backup.php] // 设置SQL文件保存文件名 $filename=date("Y-m-d_H-i-s")."-& ...

  5. MySQL使用命令备份和还原数据库

    这篇文章主要介绍了MySQL使用命令备份和还原数据库,本文使用Mysql内置命令实现备份和还原,比较简单,需要的朋友可以参考下 数据库在使用当中都会有数据库备份工作,当数据库发生严重错误无法启动,或者 ...

  6. C#备份还原MySql数据库

    原文:C#备份还原MySql数据库 项目结束,粘点代码出来让Google或Baidu一下,原因是现在还搜不到这么现成的 调用MySql的工具mysqldump来实现. 类Cmd来实现调用cmd命令, ...

  7. mysql administrator 备份 表_【转】如何使用 MySQL Administrator 管理/备份/还原 My SQL 数据库...

    如何使用 MySQL Administrator 管理/备份/还原 My SQL 数据库 MySQL Administrator 是什么软件? MySQL Administrator 是一个专门用于管 ...

  8. PHP 备份还原 MySql 数据库

    原生 PHP 备份还原 MySql 数据库 支持 MySql,PDO 两种方式备份还原 php5.5 以上的版本建议开启pdo扩展,使用 pdo 备份还原数据 备份文件夹 db_backup.impo ...

  9. mysql 备份如何使用_如何使用命令来备份和还原MySQL数据库

    数据库在使用当中都会有数据库备份工作,当数据库发生严重错误无法启动,或者数据丢失时可以及时有效地恢复数据.那么多备份就简单介绍如何使用命令来备份和还原MySQL数据库. 备份数据库 使用mysqldu ...

最新文章

  1. 2021-2027年中国室内定位市场研究及前瞻分析报告
  2. 【BZOJ4545】DQS的trie 后缀自动机+LCT
  3. Redis 持久化(persistence)
  4. Elasticsearch聚合深入详解——对比Mysql实现
  5. w3cschool php 调整图片尺寸,PHP_php修改上传图片尺寸的方法,本文实例讲述了php修改上传图 - phpStudy...
  6. 数字图像处理--图像的缩放变换
  7. 2019牛客暑期多校训练营(第三场) B-Crazy Binary String
  8. 编程语言对比 导入模块
  9. bing翻译api php,PHP调用必应翻译API示例源码
  10. webservice 完整视频教程
  11. 马尔可夫模型(MM) 马尔可夫链
  12. 在Delphi程序中访问报表对象
  13. Hard Life UVA - 1389(最大密度子图 输出点集)
  14. esp8266基于arduino一键配网掉电保存WIFI账号密码
  15. Machine Learning in Action 读书笔记---第5章 Logistic回归
  16. 第30集丨本来的面目:认识你自己
  17. 在docker容器中创建用户组和用户,并且多用户共用一个anaconda环境
  18. Python+Django+Mysql实现在线音乐推荐系统 基于用户、项目、兴趣标签的协同过滤推荐在线音乐系统、用户兴趣标签推荐系统 代码实现 源代码下载
  19. 专升本英语——应试题型突破——完形填空——十大解题技巧【学习笔记】
  20. 基于卷积神经网络的高光谱分类 CNN+高光谱+印度松数据集

热门文章

  1. linux系统编程之文件与I/O(六):fcntl 函数与文件锁
  2. [翻译] Haneke(处理图片缓存问题)
  3. Android (cocos2dx 网络访问)访问权限设置
  4. [Err] 22007 - [SQL Server]从 nvarchar 数据类型到 datetime 数据类型的转换产生一个超出范围的值。
  5. java.net.URLEncode编码 与 URLDecode解码问题
  6. html网页 table布局实例,HTML用Table表格对网页布局
  7. 代码实现tan graph model for classification_自定义 Estimator 实现(以BERT为例)
  8. mysql vfp_用 VFP 连接 MYSQL 数据库
  9. [转载] JAVA环境变量配置
  10. [转载] Python3.X 线程中信号量的使用方法示例