mreycode/laravel-db-migrator 问题修复 & 功能扩展

解决BUG、新增功能、兼容多环境部署,快速响应你的开发需求

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

mreycode/laravel-db-migrator

最新稳定版本:v2.5.2

Composer 安装命令:

composer require mreycode/laravel-db-migrator

包简介

A production-grade Laravel package for complex, large-scale database migrations with resumable, monitored, and batch-aware processing.

README 文档

README

Mreycode Logo

Latest Version on Packagist Total Downloads PHP Version

Laravel Db Migrator

A production-grade Laravel package for complex, large-scale database migrations with resumable, monitored, and batch-aware processing.

Documentation

For full documentation, please visit Mreycode Docs - Laravel Db Migrator.

Introduction

Laravel Db Migrator transforms the often-chaotic process of data ETL (Extract, Transform, Load) into a manageable, monitored, and resumable workflow. Unlike standard schema migrations, this package is designed specifically for high-volume data movement between connections.

Installation

You can install the package via composer:

composer require mreycode/laravel-db-migrator

You should publish the configuration and system migrations using:

php artisan vendor:publish --tag=db-migrator-config
php artisan vendor:publish --tag=db-migrator-migrations
php artisan migrate

Quick Start

Generate a new migrator class:

php artisan make:db-migrator UserMigrator

Implement your migration logic:

namespace App\DbMigrators;

use Mreycode\DbMigrator\AbstractDbMigrator;
use App\Models\User;

class UserMigrator extends AbstractDbMigrator
{
    /** @var string The column name representing the unique ID in the source data */
    public $migratorSourceId = 'source_id';

    /** @var string The column name representing the unique ID in the target table */
    public $migratorTargetId = 'id';

    /** @var bool Set to true to store the source-to-target ID mapping in the history table */
    public bool $recordMigratorHistory = false;

    public function sourceData()
    {
        return $this->getSourceConnection()
            ->table('legacy_users')
            ->offset($this->getOptions()['offset'])
            ->limit($this->getOptions()['limit'])
            ->get();
    }

    public function handle($params = null)
    {
        foreach ($params['sourceData'] as $row) {
            User::create([
                'name'  => $row->full_name,
                'email' => $row->email,
            ]);
        }
    }
}

Run your migration via the interactive dashboard:

php artisan mreycode:db-migrate -i

Contributing

Please see CONTRIBUTING for details.

Security

If you discover any security-related issues, please email jonreygalera@gmail.com instead of using the issue tracker.

License

The MIT License (MIT). Please see License File for more information.

统计信息

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

GitHub 信息

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

其他信息

  • 授权协议: MIT
  • 更新时间: 2026-02-16

承接程序开发

PHP开发

VUE

Vue开发

前端开发

小程序开发

公众号开发

系统定制

数据库设计

云部署

网站建设

安全加固