php mysql备份成sql_单php文件实现备份MySQL导出为.sql数据库代码
最近处理一个客户的站点,对方主机商给的权限太小,建立目录都不能,也没办法上传帝国备份网备份,后台备份也可以,但是确实也很麻烦,有没有快的办法呢,其实客户那里可以上传单文件,这不写一个单文件代码,自动生成就可以了嘛,操作如下:
单文件可实现mysql数据库备份,且生成.sql后缀;无需登录phpMyAdmin等软件在导出数据;
代码如下:
// 备份数据库
$T_Host = "localhost"; //数据库地址
$user = ""; //数据库账号
$password = ""; //数据库密码
$dbname = ""; //数据库名称
// 这里的账号、密码、名称都是从页面传过来的
if (!mysql_connect($T_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 "数据备份成功";
?>
所写所说,是心之所感,思之所悟,行之所得;文当无敷衍,落笔求简洁。 以所舍,求所获;有所依,方所成!(有事儿请详询博主:博主电话以及微信18810292089)
php mysql备份成sql_单php文件实现备份MySQL导出为.sql数据库代码相关推荐
- linux中将 home目录备份成,6种优化Linux系统备份的应用与技巧
[51CTO.com快译]当转为使用Linux时,你可能会注意到你所使用的版本会带有一个默认的备份工具.然而,可能该工具并没有被设置好去备份你系统中所有重要的部分.而且,使用该默认工具也可能导致它以比 ...
- 将 .csv文件中的数据导入My SQL数据库中
利用My SQL 将.csv文件中的数据导入数据库.首先以管理员身份运行cmd,输入指令net start mysql 运行mysql服务,然后输入指令mysql -u root -p ,输入密码.* ...
- 华为手机备份的通讯录是什么文件_怎么批量导出联系人通讯录,华为手机通讯录转移如何操作?...
能把旧手机里的数据复制到新手机的方法,有人想知道吗,像怎么批量导出联系人通讯录是我换手机进行数据转移时比较关心的问题,因为我的是华为手机,所以今天就和大家讨论下华为手机通讯录转移的方法. 换手机不丢数 ...
- php调用sql数据库代码怎么写,PHP读取SQL文件并导入数据库(示例)
/** * 读取 sql 文件并写入数据库 * @version 1.01 demo.php * @author xingshaocheng * @edit: www.jbxue.com */ cla ...
- mysql 备份库的shell_shell学习之自动备份mysql数据库
首先登陆mysql: mysql -u root -p注意:不是系统root的密码,mysql安装好后默认root密码为空 >set password for 'root'@'localhost ...
- MySQL中的几类日志文件介绍
MySQL中的几类日志文件介绍 关于Mysql日志 splunk内置了两种mysql的日志,分别是mysqld以及mysql_error mysqld_error Standard mysql err ...
- csv文件怎么转成excel_Python操作Excel文件(1):花式大师pyexcel
本文共2900余字,预计阅读时间12分钟,本文知乎连接:Python操作Excel文件(1):花式大师pyexcel,本文同步发布于silaoA的博客和微信公众号平台. 关注学习了解更多的Cygwin ...
- mysql在windows上的安装文件_MySQL安装详细图解,在Window上的详细安装步骤图解
一. MySQL安装打开下载的mysql安装文件mysql-5.5.27-win32.zip,双击解压缩,运行"setup.exe". 选择安装类型,有"Typical( ...
- 远程导入mysql_mysql导入sql文件命令和mysql远程登陆使用详解
在MySQL Qurey Brower中直接导入*.sql脚本,是不能一次执行多条sql命令的,在mysql中执行sql文件的命令: 复制代码 代码如下: mysql> source d ...
最新文章
- Android重写FragmentTabHost来实现状态保存
- c语言中常见的变量,C语言中的变量详解
- SpringBoot+Echarts实现一次ajax请求返回并显示多个饼状图
- linux cat代码,linux cat命令(示例代码)
- that is why用法
- codeforces 701 E. Connecting Universities(树+ 边的贡献)
- Linux监控命令之 top
- 【C语言笔记初级篇】第八章:简单调试
- 虚拟机中安装vmware tools 到 Debian 时出现 找不到kernel headers的提示
- hihoCoder #1014 : Trie树 [ Trie ]
- 生成固定的句子,句子中含有给定的多个关键词,python代码实现
- 比editplus好用的编辑器sublime text3
- hashMap1.7头插法及扩容
- python multiprocessing_Python的multiprocessing模块详解
- 组建一个计算机网络系统有,组建一个计算机网络一般需要哪些部件
- 新海诚没有参与制作的作品_全能的新海诚,最初几部作品都是他一个人完成的!但是却有缺陷!...
- 反软件盗版的最佳实践
- 别让自己 “墙” 了自己
- MUR20060CT-ASEMI快恢复模块200A 600V
- 词向量之词袋模型(BOW)详解
热门文章
- 在react-native中使用redux框架
- Linux-4.查看网卡信息,状态
- 关于PHP5.3作废函数的处理方法
- 国际C语言乱码大赛(IOCCC)经典之作
- mysql docker 制作_docker 制作自己的mysql镜像
- python 大量网络请求_大规模异步新闻爬虫之网络请求函数的优化
- mysql ef6 事务_使用事务-EF6 | Microsoft Docs
- php 复选框 数组,php数组的复选框
- android 锁屏应用,创建一个Android锁屏应用。
- java门户网站项目代码_基于jsp的企业门户网站-JavaEE实现企业门户网站 - java项目源码...