定制 wladmonax/laravel-db-backup 二次开发

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

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

wladmonax/laravel-db-backup

Composer 安装命令:

composer require wladmonax/laravel-db-backup

包简介

Backup and restore databases. Encrypting dumps. Save dumps to db and uploading to Dropbox. Restore dump from Dropbox.

README 文档

README

Based off of https://github.com/schickling/laravel-backup with support for Laravel 5.*.

Installation

Run composer command :

composer require wladmonax/laravel-db-backup

Or

Update your composer.json file to include this package as a dependency

"wladmonax/laravel-db-backup": "1.1.*",

Register the service provider by adding it to the providers array in the config/app.php file.

'providers' => array(
    'Witty\LaravelDbBackup\DBBackupServiceProvider'
)

or

'providers' => array(
    Witty\LaravelDbBackup\DBBackupServiceProvider::class
)

Run command to creating tables:

$ php artisan migrate

Configuration

Copy the config file into your project by running

php artisan vendor:publish

This will generate a config file like this

return [

    // add a backup folder in the app/database/ or your dump folder
    'path' => app_path() . '/database/backup/',

    // add the path to the restore and backup command of mysql
    // this exemple is if your are using MAMP server on a mac
    // on windows: 'C:\\...\\mysql\\bin\\'
    // on linux: '/usr/bin/'
    // trailing slash is required
    'mysql' => [
        'dump_command_path' => '/Applications/MAMP/Library/bin/',
        'restore_command_path' => '/Applications/MAMP/Library/bin/',
    ],

    // s3 settings
    's3' => [
        'path'  => 'your/s3/dump/folder'
    ]
    
    //dropbox settings
    'dropbox' => [
        'accessToken' => DROPBOX_ACCESS_TOKEN,
        'appSecret' => DROPBOX_APP_SECRET,
        'prefix' => DROPBOX_PREFIX, //this is name of your dropbox folder
    ],
    
    //encrypt settings
    'encrypt' => [
        'key' => ENCRYPT_KEY
    ],
    // Use GZIP compression
    'compress' => false,
];

All settings are optional and have reasonable default values.

Usage

Backup

Creates a dump file in app/storage/dumps

$ php artisan db:backup
Use specific database
$ php artisan db:backup --database=mysql
Need ecnrypt db
$ php artisan db:backup --encrypt
Save dump to dropbox
$ php artisan db:backup --dropbox
You can merge options like this
$ php artisan db:backup --dropbox --encrypt
Upload to AWS S3
$ php artisan db:backup --upload-s3 your-bucket

You can use the --keep-only-s3 option if you don't want to keep a local copy of the SQL dump.

Uses the aws/aws-sdk-php-laravel package which needs to be configured.
Uses the spatie/flysystem-dropbox package.

Restore

Paths are relative to the app/storage/dumps folder.

Restore a dump
$ php artisan db:restore dump.sql
Restore from last backup dump
$ php artisan db:restore --last-dump
Restore from Dropbox
$ php artisan db:restore --dropbox-dump=filename.sql
Restore from Dropbox last dump
$ php artisan db:restore --dropbox-last-dump
List dumps
$ php artisan db:restore

wladmonax/laravel-db-backup 适用场景与选型建议

wladmonax/laravel-db-backup 是一款 基于 PHP 开发的 Composer 扩展包,目前已累计 6.51k 次下载、GitHub Stars 达 2, 最近一次更新时间为 2019 年 02 月 20 日, 在 PHP 生态内属于活跃度较高的组件。

我们在过去多个企业项目中使用过 wladmonax/laravel-db-backup 或与其功能相近的方案,如果你在选型或落地过程中遇到问题,例如 版本兼容、二次改造、私有化封装、与内部系统对接、生产 BUG 排查,欢迎联系我们协助评估。

围绕 wladmonax/laravel-db-backup 我们能提供哪些服务?
定制开发 / 二次开发

基于 wladmonax/laravel-db-backup 在你已有业务上做功能扩展、字段裁剪、UI 适配、与内部账号 / 权限 / 日志系统的深度对接。

BUG 修复 & 性能优化

线上偶发问题、内存泄漏、慢查询、并发异常等排查修复;针对高流量场景做缓存、队列、索引层面的调优。

项目外包 & 长期维护

承接完整的项目从需求 → 设计 → 开发 → 上线 → 长期运维;也可按月提供技术保姆服务。

yvsm@zunyunkeji.com QQ:316430983 微信:yvsm316 西安尊云信息科技 · 专注 PHP / Go / 分布式系统研发

统计信息

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

GitHub 信息

  • Stars: 2
  • Watchers: 0
  • Forks: 17
  • 开发语言: PHP

其他信息

  • 授权协议: MIT
  • 更新时间: 2019-02-20