返回列表 回复 发帖

[转帖]SQL文件切割器

作者:norman
  1. <html>
  2. <head>
  3. <title>SQL文件切割器 v0.00001</title>
  4. </head>
  5. <?php
  6. /////////////////////////////////////////////
  7. //昨天用myAdmin导入数据库的时候,因为数据库文件大于了2M,所以失败了
  8. //手动?太麻烦了,上网找个分割文件的工具,太笨了,没找到,就自己
  9. //这是一个主要用来分割备份的mysql数据库文件,现在还非常简陋,<img src="images/smilies/frown.gif" border="0" alt="">
  10. //它通过文件的回车符来判别行数,可以判别此行是否为一句完整的sql语句,
  11. //如果不是的话,就继续读取下一行....
  12. //嗯...就是这样了..现在还不能指定保存的范围,有时间会写吧...
  13. //哦对,我是thenorman.com/bbs混的坛主Norman
  14. /////////////////////////////////////////////
  15. //每次读取多少行的代码,以"/n"来分辨
  16. $per=300;
  17. //生成的文件由三部分组成,序号+前缀+文件名
  18. $pre='_';
  19. //要切割的文件名,要和程序放在同一个目录,而且此目录要有可写权
  20. $filename='post.sql';
  21. $start=0;
  22. $block=0;
  23. //$end=;
  24. if(!isset($start)) $start=0;
  25. if(!isset($block)) $block=0;
  26. if(file_exists($filename)){//文件存在则
  27.     $array=file($filename);
  28.     $rowtotal=sizeof($array);
  29.     echo "数据库文件共有 <font color=red><b>".$rowtotal."</b></font> 行.<br>";
  30.     echo "现在开始分割文件,please wait... <br><br>";
  31.     while($start<$rowtotal){
  32.         $fp=fopen("$block$pre$filename","a+");
  33.         $i=$start;
  34.         if($i+$per>$rowtotal){
  35.             echo "写入 $i 到 ".$rowtotal." 行到$block$pre$filename.....";
  36.         }else{
  37.             echo "写入 $i 到 ".($start+$per)." 行到$block$pre$filename.....";
  38.         }
  39.         while($i<($start+$per)){
  40.             @fwrite($fp,$array[$i]);
  41.             $i++;
  42.             if($i>$rowtotal) break;
  43.         }
  44.         echo "完成<br><br>";
  45.         $start=$i;
  46.         fclose($fp);
  47.         while(@strlen($array[$start-1])==(@strrpos($array[$start-1],";")+1)){
  48.             $addfp=fopen("$block$pre$filename","a+");
  49.             @fwrite($addfp,$array[$start]);
  50.             $start++;
  51.             if($start>$rowtotal) break;
  52.         }
  53.         $block++;
  54.     }
  55.     echo "<br><br><br>OoooooooooK,全部完成~";
  56. }else{
  57. echo "指定的 $filename 不存在,请检查.....";
  58. }
  59. ?>
  60. </html>
复制代码

                     我是一个呼吸着现在的空气而生活在过去的人
               这样的注定孤独,孤独的身处闹市却犹如置身于荒漠
                                     我已习惯了孤独,爱上孤独
                                 他让我看清了自我,还原了自我
                             让我再静静的沉思中得到快乐和满足
                                   再孤独的世界里我一遍又一遍
                                   不厌其烦的改写着自己的过去
                                             延伸到现在与未来
                                       然而那只是泡沫般的美梦
                                 产生的时刻又伴随着破灭的到来
                         在灰飞烟灭的瞬间我看到的是过程的美丽
                                      而不是结果的悲哀。。。
返回列表