转至繁体中文版     | 网站首页 | 图文教程 | 资源下载 | 站长博客 | 图片素材 | 武汉seo | 武汉网站优化 | 
最新公告:     敏韬网|教学资源学习资料永久免费分享站!  [mintao  2008年9月2日]        
您现在的位置: 学习笔记 >> 图文教程 >> 数据库 >> MySql >> 正文
备份数据库(Mysql)的简易程序         ★★★★

备份数据库(Mysql)的简易程序

作者:闵涛 文章来源:闵涛的学习笔记 点击数:1437 更新时间:2009/4/22 20:56:43

     在公司(网络)的服务器上有很多网站,我上传网站时对其他瓦干也有同样的权限。所以就想把同事的网站荡下来学习一下。有了源代码,没有数据库什么也运行不了啊。服务器的数据库是安网站开的,每一个网站把*.sql发给服务器管理员,由管理员导入到数据库中。但是数据库账号密码不能登陆只能执行sql语句。所以我就想起来做一个简易的,类似于phpmyadmin的数据库导出功能。这样我就可以轻松的获得所有网站的数据库了。

     用这个程序可以实现简单的数据导出(生成的脚本可直接在phpmyadmin执行)。进一步的功能还可以慢慢扩展。当然不要用来盗用别人机密的冬冬了。

     其中解析的数据类型还不全,只是集中简单的常用类型。如果那位仁兄,发现了其他不适用的类型,请告诉我mailto:woaini4651@yahoo.com.cn。

图例

index.php

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>数据库备份</title>
<style type="text/css">
.borderoff{ border-style:none; background-color:#F3F3F3}
</style>
</head>
<body>
<table width="100%" border="0" cellspacing="1" cellpadding="0" align="center">
  <tr valign="top">
    <td height="378"><br>
        <form action="cmd.php" method="post" name="backup" target="_blank" id="backup">
          <table width="500" border="0" cellspacing="1" cellpadding="4" align="center">
            <tr>
              <td colspan="2" align="center">数据库备份</td>
            </tr>
            <tr bgcolor="#F3F3F3">
              <td width="166" align="right"> 服务器名:</td>
              <td width="313"><input name="hostname" type="text" class="borderoff" value="localhost" size="35" maxlength="50">
              </td>
            </tr>
            <tr bgcolor="#F3F3F3">
              <td width="166" align="right"> 数据库名:</td>
              <td width="313"><input name="database" type="text" class="borderoff" value="yes_da" size="35" maxlength="50">
              </td>
            </tr>
            <tr bgcolor="#F3F3F3">
              <td width="166" align="right">账&nbsp;&nbsp;&nbsp;&nbsp;号:</td>
              <td width="313"><input name="username" type="text" class="borderoff" value="root" size="35" maxlength="50">
              </td>
            </tr>
            <tr bgcolor="#F3F3F3">
              <td width="166" align="right">密&nbsp;&nbsp;&nbsp;&nbsp;码:</td>
              <td width="313"><input name="password" type="text" class="borderoff" size="35" maxlength="50">
              </td>
            </tr>
            <tr bgcolor="#F3F3F3">
              <td width="166" align="right"> 完全备份:</td>
              <td width="313">
                <input type="radio" name="backup_type" value="full" checked>
              </td>
            </tr>
            <tr bgcolor="#F3F3F3">
              <td width="166" align="right">只备份结构:</td>
              <td width="313">
                <input type="radio" name="backup_type" value="structure">
              </td>
            </tr>
            <tr bgcolor="#F3F3F3">
              <td width="166" align="right">只备份数据:</td>
              <td width="313">
                <input type="radio" name="backup_type" value="data">
              </td>
            </tr>
            <tr bgcolor="#F3F3F3">
              <td width="166" align="right">采用压缩格式:</td>
              <td width="313">
                <input type="radio" name="gzipcompress" value="0" checked>
                否
                <input type="radio" name="gzipcompress" value="1">
                是(zip)</td>
            </tr>
            <tr>
              <td colspan="2" align="center">
                  <input name="backupstart" type="submit" value="开始备份">
              </td>
            </tr>
          </table>
      </form>
        <p align="center"> <br>
            <br>
      </p></td>
  </tr>
</table>
</body>
</html>

cmd.php

<?php
if(isset($_POST[''''backupstart'''']))
{
 $hostname = trim($_POST[''''hostname'''']);
 $database = trim($_POST[''''database'''']);
 $username = trim($_POST[''''username'''']);
 $password = trim($_POST[''''password'''']);
 $backtype = $_POST[''''backup_type''''];
 $gz   = $_POST[''''gzipcompress''''];
 
 $link = @mysql_pconnect($hostname, $username, $password);
 if(!$link)
 {    //连接数据库
  echo "数据库打开出错!";
  exit();
 }//end if
 
 $table_list = get_table_list($link,$database);
 if($table_name===false)
 {    //检索数据库的表
  echo "数据库打开出错!!";
  exit();
 }//end if
 //echo "<pre>";
 //print_r($table_list);
 
 $table_code = "";
 while(list($key,$table_name)=each($table_list))
 {    //执行对每一个表的数据返回
  if($backtype!="data")
  {   //备份结构
   $table_code .= get_table_code($link,$database,$table_name);
  }//end if
  if($backtype!="structure")
  {   //备份数据
   $table_code .= get_table_data($link,$database,$table_name);
  }//end if
 }//end while
 //echo $table_code;
 if($gz==0)
 {    //输出
  $filename = $database.".sql";
  $handle = fopen($filename, "a+");
  $temp = fwrite($handle, $table_code);
  echo $temp;
  fclose($handle);
  //header("location:",$filename);
  
  echo "<script>location.replace(''''".$file

[1] [2]  下一页


没有相关教程
教程录入:mintao    责任编辑:mintao 
  • 上一篇教程:

  • 下一篇教程:
  • 【字体: 】【发表评论】【加入收藏】【告诉好友】【打印此文】【关闭窗口
      注:本站部分文章源于互联网,版权归原作者所有!如有侵权,请原作者与本站联系,本站将立即删除! 本站文章除特别注明外均可转载,但需注明出处! [MinTao学以致用网]
      网友评论:(只显示最新10条。评论内容只代表网友观点,与本站立场无关!)

    同类栏目
    · Sql Server  · MySql
    · Access  · ORACLE
    · SyBase  · 其他
    更多内容
    热门推荐 更多内容
  • 没有教程
  • 赞助链接
    更多内容
    闵涛博文 更多关于武汉SEO的内容
    500 - 内部服务器错误。

    500 - 内部服务器错误。

    您查找的资源存在问题,因而无法显示。

    | 设为首页 |加入收藏 | 联系站长 | 友情链接 | 版权申明 | 广告服务
    MinTao学以致用网

    Copyright @ 2007-2012 敏韬网(敏而好学,文韬武略--MinTao.Net)(学习笔记) Inc All Rights Reserved.
    闵涛 投放广告、内容合作请Q我! E_mail:admin@mintao.net(欢迎提供学习资源)

    站长:MinTao ICP备案号:鄂ICP备11006601号-18

    闵涛站盟:医药大全-武穴网A打造BCD……
    咸宁网络警察报警平台