network 发表于 2018-12-20 08:41:01

php数据库备份原理及实现

  1. mydb.php //DB类
  2. backup.php //备份脚本
  3. restore.php //还原脚本
  mydb.php
  
  backup.php
  
  

  
    备份方式
            备份全部数据备份全部数据表中的数据到一个备份文件
  备份单张表数据
  请选择
  
  备份选中数据表中的数据到单独的备份文件
  使用分卷备份
  

  分卷备份   选择目标位置

  备份到服务器  备份到本地
  
  
  
  restore.php
  
  

  
  
  
  从服务器文件恢复   -请选择-
  
  
           从本地文件恢复
  
     
  
  文件结构非常清晰,只要在文件2和3里面设置好数据库服务器的地址、用户名、密码就可以备份还原数据了。需要注意的是:
  ·使用时候要在同级目录下建一个Backup目录,权限需要可写,用于存放导出的脚本。
  ·当备份的数据库比较大的时候,服务器脚本超时时间要调大一些。
  ·支持分卷备份,还原时候只要选择分卷备份的第一个脚本就会自动还原所有的脚本。
  ·分卷文件大小不要太大,最好不超过2MB。
  ·安全起见,脚本不用时候记得从服务器上删除。
  数据库备份
  1.php备份数据库的原理
  查找所有表查找所有字段查找所有数据 生成SQL
  2.php中mysql相关函数
  mysql_list_tables()表查询函数,类似mysql_query()函数
  mysql_fetch_field()字段信息函数,返回句柄
  Name字段的名称
  Table字段所属数据库的名称
  type 字段的类型
  max_length字段的最大长度
  not_null字段是否为空
  3.备份时注意事项
  a.注意数据库的大小,过大或者过多分段处理
  b.生成的SQL文件名或者存在不已被猜到
  c.备份生成文件可以表或者自动为单位保存
  d.可以使用ZIP组件压缩生成的文件以便保存
  $dbname="root"
  mysql_connect('localhost','root','');
  mysql_select_db();
  $tq=mysql_list_tables($dbname);
  while($tr=mysql_fetch_rows($tq)){
  }
  function get_table_fd($dbname){
  $query=mysql_query("select * from $dbname");
  while($row=mysql_fetch_field($query)){
  echo $row->name
  }
  }

页: [1]
查看完整版本: php数据库备份原理及实现