设为首页 收藏本站
查看: 722|回复: 0

[经验分享] php数据库备份原理及实现

[复制链接]

尚未签到

发表于 2018-12-20 08:41:01 | 显示全部楼层 |阅读模式
  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、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-653393-1-1.html 上篇帖子: Linux系统上银行支付接口php 下篇帖子: Php与html表单
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表