fdevs/backup
最新稳定版本:0.4.0
Composer 安装命令:
composer require fdevs/backup
包简介
FDevs Backup Component
README 文档
README
Installation
Backup uses Composer, please checkout the composer website for more information.
The simple following command will install fdevs/backup into your project. It also add a new
entry in your composer.json and update the composer.lock as well.
composer require fdevs/backup
Usage examples
dump/restore folder with compress
<?php use FDevs\Backup\Manager; use FDevs\Backup\Source\Folder; use FDevs\Backup\Filesystem\LocalFile; use FDevs\Backup\Compress\TarGzip; $sourceFolder = '';//your source folder. for example with images $tmpFolder = ''; //tmp folder MST be writable $dumpFolder = '';//dump folder if ypu use local dump $source = new Folder($sourceFolder,$tmpFolder); $filesystem = new LocalFile($dumpFolder); $compress = new TarGzip(); $manager = new Manager($source,$filesystem,$compress); $key = $manager->dump(); echo $key;//show key dumped folder $manager->restore($key);//restore data $manager->keyList();//show all keys in uses filesystem
dump/restore mongodb with compress
<?php use FDevs\Backup\Manager; use FDevs\Backup\Source\MongoDB; use FDevs\Backup\Filesystem\LocalFile; use FDevs\Backup\Compress\TarGzip; $dumpFolder = '';//dump folder if ypu use local dump $tmpFolder = ''; //tmp folder MUST be writable $options = [ //'host' => 'localhost' Specifies a resolvable hostname for the mongod to which to connect. default localhost //'port' => 27017 Specifies the TCP port on which the MongoDB instance listens for client connections. Delault 27017 //'db'=>'dbname' Specifies a database to backup. If you do not specify a database, copies all databases in this instance into the dump files. //'collection'=>'collection' Specifies a collection to backup. If you do not specify a collection, this option copies all collections in the specified database or instance to the dump files. //'username'=>'username' Specifies a username with which to authenticate to a MongoDB database that uses authentication. //'password'=>'password' Specifies a password with which to authenticate to a MongoDB database that uses authentication. //'override' => false Before restoring the collections from the dumped backup, drops the collections from the target database. ]; $source = new MongoDB($tmpFolder); $filesystem = new LocalFile($dumpFolder); $compress = new TarGzip(); $manager = new Manager($source,$filesystem,$compress); $key = $manager->dump($options); echo $key;//show key dumped folder $manager->restore($key,$options);//restore data $manager->keyList();//show all keys in uses filesystem
dump/restore mysql with compress
<?php use FDevs\Backup\Manager; use FDevs\Backup\Source\Mysql; use FDevs\Backup\Filesystem\LocalFile; use FDevs\Backup\Compress\TarGzip; $dumpFolder = __DIR__.'/dump/';//dump folder if ypu use local dump $tmpFolder = __DIR__.'/tmp/'; //tmp folder MUST be writable $options = [ 'host' => 'localhost',// Specifies a resolvable hostname for the mysqldump to which to connect. default localhost 'port' => 3306, //Specifies the TCP port on which the Mysql server instance listens for client connections. Delault 3306 'databases'=>['dbname'],// Specifies a database to backup. If you do not specify a database, copies all databases in this instance into the dump files. 'user'=>'symfony', //Specifies a username with which to authenticate to a Mysql database that uses authentication. 'password'=>'symfony', //Specifies a password with which to authenticate to a Mysql database that uses authentication. 'override' => false,//Before restoring the collections from the dumped backup, drops the tables from the target database. ]; $source = new Mysql($tmpFolder); $filesystem = new LocalFile($dumpFolder); $compress = new TarGzip(); $manager = new Manager($source,$filesystem,$compress); $key = $manager->dump($options); echo $key;//show key dumped folder $manager->restore($key,$options);//restore data $manager->keyList();//show all keys in uses filesystem
License
This library is under the MIT license. See the complete license in the library:
LICENSE
Created by 4devs - Check out our blog for more insight into this and other open-source projects we release.
fdevs/backup 适用场景与选型建议
fdevs/backup 是一款 基于 PHP 开发的 Composer 扩展包,目前已累计 3.75k 次下载、GitHub Stars 达 0, 最近一次更新时间为 2016 年 08 月 20 日, 在 PHP 生态内属于活跃度较高的组件。
它主要适用于以下技术方向: 「dump」 「backup」 「mysqldump」 「reestore」 「mysqlrestore」 「mongodump」 等业务场景。在实际项目中,围绕这些方向常见需要落地的问题包括:接口对接、性能调优、并发安全、与既有框架(Laravel / ThinkPHP / Yii / Webman 等)的兼容适配,以及生产环境的日志埋点与稳定性保障。
我们在过去多个企业项目中使用过 fdevs/backup 或与其功能相近的方案,如果你在选型或落地过程中遇到问题,例如 版本兼容、二次改造、私有化封装、与内部系统对接、生产 BUG 排查,欢迎联系我们协助评估。
基于 fdevs/backup 在你已有业务上做功能扩展、字段裁剪、UI 适配、与内部账号 / 权限 / 日志系统的深度对接。
线上偶发问题、内存泄漏、慢查询、并发异常等排查修复;针对高流量场景做缓存、队列、索引层面的调优。
承接完整的项目从需求 → 设计 → 开发 → 上线 → 长期运维;也可按月提供技术保姆服务。
与 fdevs/backup 相关的其它包
同方向 / 同关键字的高下载量 PHP Composer 包推荐,方便对比选型:
This package will add the `dd` and `dump` helpers to your Phalcon application.
Synchronisation Utility: File and Database
A SDK for working with B2 cloud storage.
Simple Twig extension improving templates debugging
nice output for debug functions for PHP 5.3
A mysqldump wrapper for laravel. Dump your table schemas and data into files.
统计信息
- 总下载量: 3.75k
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 0
- 点击次数: 17
- 依赖项目数: 0
- 推荐数: 0
其他信息
- 授权协议: MIT
- 更新时间: 2016-08-20