lexuses/mysql-dump

Laravel 5+ 包,用于自动将 MySQL 数据库导出到本地存储或云端

2.0 2018-03-15 13:16 UTC

This package is not auto-updated.

Last update: 2024-09-29 05:21:07 UTC


README

Laravel 包,用于自动将 MySQL 数据库导出到本地存储,并自动上传到云端(如 S3)。

安装

composer require lexuses/mysql-dump

对于低于 5.5 的 Laravel:将 Lexuses\MysqlDump\MysqlDumpServiceProvider 添加到您的 app.php

在命令行中运行此命令

php artisan vendor:publish

编辑 config/filesystems.php 并设置本地存储或使用现有设置

'disks' => [
    'database' => [
        'driver' => 'local',
        'root' => database_path(),
    ],
],

编辑 config/mysql-dump.php 并设置存储位置、导出名称、文件夹名称、周期内最大导出次数。

设置 mysqldump 命令。默认情况下使用 --complete-insert 标志,这意味着只保存数据不保存结构。请参阅官方文档 dev.mysql.com/doc/refman/5.7/en/mysqldump.html

您可以使用它与 Docker 一起使用。因此,您必须将 mysql dump 设置为

    'mysqldump' => 'docker exec laradock_mysql_1 /usr/bin/mysqldump'

别忘了检查您容器的名称。

用法

自动模式。将命令添加到 Console/Kernel.php

protected function schedule(Schedule $schedule)
{
    $schedule->command('mysql-dump:auto')->hourly();
}

手动模式

php artisan mysql-dump:export

导出列表

php artisan mysql-dump:list

导入导出

如果您将导出保存到云端,它将下载该文件。

php artisan mysql-dump:import

截断

php artisan mysql-dump:truncate

删除表

php artisan mysql-dump:drop