thinkPHP使用pclzip打包备份mysql数据库的方法

本文实例讲述了thinkPHP使用pclzip打包备份mysql数据库的方法。分享给大家供大家参考,具体如下:

PclZip介绍 PclZip library能够压缩与解压缩Zip格式的压缩档(WinZip、PKZIP);且能对此类类档案进行处理,包括产生压缩档、列出压缩档的内容以及解压缩档案等等

数据库备份是一件非常重要的事情,备份的方式也很多有的通过vps直接进行备份、有的通过phpmyadmin进行数据进行备份。小编觉得这些该麻烦了并且备份好的.sql文件过于太大占用了一定的空间。所以用pclzip将sql文件进行压缩,这样节省了一部分空间。之前小编有写过数据库备份的代码这里就不再复述,Pclzip官方下载地址:http://www.phpconcept.net/pclzip/pclzip-downloads(最新版本2-8-2)。
本站下载地址。

在DatabaseAction.class.php文件中查找 file_put_contents在下面添加如下代码

import("ORG.Util.PclZip");
$archive = new PclZip('./data/'.date("y-m-d").'.zip');
$v_list = $archive->create($dir);
if(file_exists($dir)&&$v_list != 0)
{
$this->success("备份成功&&压缩成功");
}else
{
die("Error : ".$archive->errorInfo(true));
$this->error("备份失败");
}

并将原有的DatabaseAction.class.php中原有if判断删除

更多关于thinkPHP相关内容感兴趣的读者可查看本站专题:《PHP操作zip文件及压缩技巧总结》、《php文件操作总结》、《ThinkPHP入门教程》、《ThinkPHP常用方法总结》、《smarty模板入门基础教程》及《PHP模板技术总结》。

希望本文所述对大家基于ThinkPHP框架的PHP程序设计有所帮助。

(0)

相关推荐

  • thinkPHP框架中执行原生SQL语句的方法

    本文实例讲述了thinkPHP框架中执行原生SQL语句的方法.分享给大家供大家参考,具体如下: 怎样在thinkphp里面执行原生的sql语句? $Model = new Model();//或者 $Model = D(); 或者 $Model = M(); $sql = "select * from `order`"; $voList = $Model->query($sql); 只是需要new一个空的模型继承Model中的方法. 注意query是查功能,execute是增删改

  • Thinkphp实现MySQL读写分离操作示例

    相对于其他方法实现MySQL的读写分离来说,采用Thinkphp框架实现MySQL的读写分离简单易用,其配置文件示例代码如下: 'DB_TYPE'=> 'mysql', 'DB_DEPLOY_TYPE' => 1, //开打支持多服务器 'DB_RW_SEPARATE'=>true,//数据库读写否分离 'DB_HOST'=> '192.168.11.101,192.168.11.102', 'DB_NAME'=>'test', 'DB_USER'=>'admin',

  • thinkphp3.x连接mysql数据库的方法(具体操作步骤)

    本文实例讲述了thinkphp3.x连接mysql数据库的方法.分享给大家供大家参考,具体如下: 惯例配置文件:ThinkPHP/conf/convention.php (1)在配置文件中填写配置信息(配置文件:"./xmall/conf/config.php"): 示例: <?php return array( //'配置项'=>'配置值' /* 数据库设置 */ 'DB_TYPE' => 'mysql', // 数据库类型 'DB_HOST' => 'loc

  • thinkphp中多表查询中防止数据重复的sql语句(必看)

    下面先来看看例子: table id name 1 a 2 b 3 c 4 c 5 b 库结构大概这样,这只是一个简单的例子,实际情况会复杂得多. select *, count(distinct name) from table group by name 结果: id name count(distinct name) 1 a 1 2 b 1 3 c 1 最后一 项是多余的,不用管就行了 tp2.0手册   搜索连贯操作 可看到相关的资料 SELECT cat_id, COUNT(*) AS

  • thinkPHP连接sqlite3数据库的实现方法(附Thinkphp代码生成器下载)

    本文实例讲述了thinkPHP连接sqlite3数据库的简单实现方法.分享给大家供大家参考,具体如下: 首先检查Thinkphp目录下\Lib\Driver\Db目录里有没有DbPdo.class.php 这个文件. 如果没有就去这里下吧:http://www.thinkphp.cn/extend/205.html 然后再确认打开了PHP对sqlite的扩展支持,extension=php_sqlite.dll 连接sqlite3数据库: 在config.php 文件中添加如下配置: 'DB_T

  • thinkphp下MySQL数据库读写分离代码剖析

    当采用原生态的sql语句进行写入操作的时候,要用execute,读操作要用query. MySQL数据主从同步还是要靠MySQL的机制来实现,所以这个时候MySQL主从同步的延迟问题是需要优化,延迟时间太长不仅影响业务,还影响用户体验. thinkphp核心类Thinkphp/library/Model.class.php 中,query 方法,调用Thinkphp/library/Think/Db/Driver/Mysql.class.php /** * SQL查询 * @access pub

  • ThinkPHP结合ajax、Mysql实现的客户端通信功能代码示例

    该实例通过ThinkPHP结合Ajax与mysql实现了客户端的通信功能,具体如下: 1.使用js的ajax局部刷新功能,每次刷新将数据库中读取出的新记录插入到页面的显示区域,代码如下: window.onload =setInterval(showWords1000);//加载完成之后开始执行刷新功能 function showWords()//刷新时被调用函数,实现ajax请求 { xmlHttp=GetXmlHttpObject();//从自定义的函数中获取请求对象. if (xmlHtt

  • thinkphp区间查询、统计查询与SQL直接查询实例分析

    本文实例讲述了thinkphp区间查询.统计查询与SQL直接查询.分享给大家供大家参考.具体方法如下: 一.区间查询: 复制代码 代码如下: $data['id']=array(array('gt',4),array('lt',10));//默认关系是(and)并且的关系  //SELECT * FROM `tp_user` WHERE ( (`id` > 4) AND (`id` < 10) )    $data['id']=array(array('gt',4),array('lt',10

  • 对于ThinkPHP框架早期版本的一个SQL注入漏洞详细分析

    ThinkPHP官网上曾有一段公告指出,在ThinkPHP 3.1.3及之前的版本存在一个SQL注入漏洞,漏洞存在于ThinkPHP/Lib/Core/Model.class.php 文件 根据官方文档对"防止SQL注入"的方法解释(参考http://doc.thinkphp.cn/manual/sql_injection.html) 使用查询条件预处理可以防止SQL注入,没错,当使用如下代码时可以起到效果: $Model->where("id=%d and usern

  • thinkPHP使用pclzip打包备份mysql数据库的方法

    本文实例讲述了thinkPHP使用pclzip打包备份mysql数据库的方法.分享给大家供大家参考,具体如下: PclZip介绍 PclZip library能够压缩与解压缩Zip格式的压缩档(WinZip.PKZIP);且能对此类类档案进行处理,包括产生压缩档.列出压缩档的内容以及解压缩档案等等 数据库备份是一件非常重要的事情,备份的方式也很多有的通过vps直接进行备份.有的通过phpmyadmin进行数据进行备份.小编觉得这些该麻烦了并且备份好的.sql文件过于太大占用了一定的空间.所以用p

  • Python实现备份MySQL数据库的方法示例

    本文实例讲述了Python实现备份MySQL数据库的方法.分享给大家供大家参考,具体如下: #!/usr/bin/env python # -*- coding:utf-8 -*- #导入模块 import MySQLdb import time import datetime import os """ Purpose: 备份数据库 Created: 2015/5/12 Modified:2015/5/12 @author: guoyJoe ""&quo

  • 8种手动和自动备份MySQL数据库的方法

    作为流行的开源数据库管理系统,MySQL的使用者众多,为了维护数据安全性,数据备份是必不可少的.本文就为大家介绍几种适用于企业的数据备份方法. 使用MySQLDump进行MySQL备份 mysqldump是MySQL内置的工具,允许用户将数据库指定不同的选项备份到文件.服务器,甚至是压缩gzip文件中.mysqldump实用程序灵活,快速,可执行高级备份,并接受各种命令行参数,用户可通过这些参数来更改备份数据库的方式. Windows操作系统中的c:mysqlbin和Unix / Linux系统

  • 删库跑路?使用xtraback备份MySQL数据库的方法

    一.mysqldump备份方式是采用逻辑备份.最大的缺陷就是备份和恢复的速度都慢,对于一个50G的数据库而言,这个速度还是可以接受的,但是如果数据库非常大,那在使用mysqdump备份就不是太合适了.. 这时候就需要一种很好用又高效的工具,xtraback 就是其中的一款,号称免费版的innodb hotbackup xtraback特点如下: 备份过程快速,可靠 备份过程不会打断正在执行的事务 能够基于压缩等功能节约磁盘空间和流量 自动实现备份检验 还原速度快 二.安装xtraback 1)下

  • linux下备份MYSQL数据库的方法

    只需按照下面3步做,一切都在你的掌控之下: 第一步:在服务器上配置备份目录代码: -------------------------------------------------------------------------------- mkdir /var/lib/mysqlbackup cd /var/lib/mysqlbackup -----------------------------------------------------------------------------

  • Linux 每天自动备份mysql数据库的方法

    /usr/bin为mysql安装目录 建备份文件夹: mkdir mysql_data_bak 建脚本文件: touch autobackupmysql.sh 打开文件 vi autobackupmysql.sh 在脚本中加入如下内容: filename=`date +%Y%m%d` /usr/bin/mysqldump -opt mysql -u root -proot|gzip >/mysql_data_bak/name$filename.gz 这里注意了 一般的: ************

  • Python实现定时备份mysql数据库并把备份数据库邮件发送

    一.先来看备份mysql数据库的命令 mysqldump -u root --password=root --database abcDataBase > c:/abc_backup.sql 二.写Python程序 BackupsDB.py #!/usr/bin/python # -*- coding: UTF-8 -*- ''''' zhouzhongqing 备份数据库 ''' import os import time import sched import smtplib from em

  • MYSQL代码 定期备份Mysql数据库

    相信很多个人网站的站长,或者是独立Blog的博主,都有着备份数据库这样一个需求.当然WordPress这样插件非常丰富的Blog系统有好多能帮你完成这项任务的插件.如果您需要自己亲手来备份数据库的话,我贴一个Mysql自动备份脚本供大家参考,在国外网站上看到的,还是不错,实现了定期备份Mysql数据库,并且可以选在在每周的一天做指定目录下文件的全面备份,备份文件自动上传到你指定的FTP上,保证了备份的可靠性.如果只是把数据库备份在和数据库一起,我想意义也不是特别大了. 复制代码 代码如下: #!

  • Linux shell实现每天定时备份mysql数据库

    每天定时备份mysql数据库任务,删除指定天数前的数据,保留指定天的数据: 需求:   1,每天4点备份mysql数据:   2,为节省空间,删除超过3个月的所有备份数据:   3,删除超过7天的备份数据,保留3个月里的 10号 20号 30号的备份数据: #创建shell文件 vim backup_mysql.sh mysqldump -uroot -p123456 --all-databases > /data/dbdata/mysqlbak/`date +%Y%m%d`.sql find

  • PHP XML备份Mysql数据库

    用PHP实现XML备份Mysql数据库 收藏 以下是在Linux下通过Apache+PHP对Mysql数据库的备份的文件代码: 文件一.Listtable.php (文件列出数据库中的所有表格,供选择备份) 请选择要备份的表格: 复制代码 代码如下: <? $con=mysql_connect('localhost','root','xswlily'); $lists=mysql_list_tables("embed",$con); //数据库连接代码 $i=0; while($

随机推荐