当前位置: 首页 > 图文教程 > 网络编程 > PHP > php数据库备份参考

PHP
支持php4、php5的mysql数据库操作类
apache rewrite_module模块使用教程
java EJB 加密与解密原理的一个例子
asp和php下textarea提交大量数据发生丢失的解决方法
用php实现批量查询清除一句话后门的代码
Dedecms常用函数解析
PHP5 面向对象程序设计
PHP4与PHP5的时间格式问题
请php正则走开
php str_replace的替换漏洞
php 常用字符串函数总结
php实现mysql数据库备份类
由php if 想到的些问题
附件名前加网站名
深思 PHP 数组遍历的差异(array_diff 的实现)
PHP 实例化类的一点摘记
php入门小知识
php木马攻击防御之道
php不用正则采集速度探究总结
非常不错的MySQL优化的8条经验

PHP 中的 php数据库备份参考


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-03   浏览: 231 ::
收藏到网摘: n/a

转自:http://www1.blog.163.com/article/-Bov-01EjrIa.html
<?php
 set_time_limit(36000);
  $orders = 9; //目标表序号
  $dbNames = array("seeditbbs","seedblog"); //备份多库
 $con = mysql_connect("localhost","root","h67g4n9s8l"); //h67g4n9s8l
 mysql_select_db("seeditbbs",$con);
  $rs = mysql_query("SHOW GLOBAL VARIABLES"); //读取MYSQL系统变量  while($row = mysql_fetch_row($rs)){     if($row[0]=="datadir"){ 
 $dataDir = $row[1]; //得到MYSQL的DATA目录 
 mysql_free_result($rs); 
 break;} 
 } foreach($dbNames as $dbName){ //循环备份多库     $fromDir = $dataDir;  $toDir = "i:/db_bak/{$dbName}{$orders}/"; //目标目录 if(!is_dir($toDir)) mkdir($toDir ); //建保存目录  $fromDir .= "{$dbName}/"; //源目录  $dirArr = scandir($fromDir);
 foreach($dirArr as $subFile){ //拷备所有表文件 
     if(!@preg_match("|^\.+$|",$subFile)) copy($fromDir.$subFile,$toDir.$subFile); 
  } } ($orders<9) ? $orders++ : $orders=1; //表序号自增,一日9次,备份时间: 1 8 10 12 14 16 18 20 22 $file = file_get_contents($_SERVER["SCRIPT_FILENAME"]);
  $file = preg_replace("|\\\$orders \= \d+|","\$orders = $orders",$file); //修改本文件目标表序号 file_put_contents($_SERVER["SCRIPT_FILENAME"],$file); //保存?>