定制 fdevs/backup 二次开发

按需修改功能、优化性能、对接业务系统,提供一站式技术支持

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

fdevs/backup

最新稳定版本:0.4.0

Composer 安装命令:

composer require fdevs/backup

包简介

FDevs Backup Component

README 文档

README

Build Status

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.

统计信息

  • 总下载量: 3.75k
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 0
  • 点击次数: 1
  • 依赖项目数: 0
  • 推荐数: 0

GitHub 信息

  • Stars: 0
  • Watchers: 5
  • Forks: 1
  • 开发语言: PHP

其他信息

  • 授权协议: MIT
  • 更新时间: 2016-08-20

承接程序开发

PHP开发

VUE

Vue开发

前端开发

小程序开发

公众号开发

系统定制

数据库设计

云部署

网站建设

安全加固