temori/distancexport

一种能够在具有不同结构的数据库之间迁移数据的迁移工具。

安装: 2

依赖项: 0

建议者: 0

安全: 0

星星: 0

关注者: 2

分支: 0

公开问题: 0

语言:JavaScript

v1.0.0 2020-11-05 00:06 UTC

This package is auto-updated.

Last update: 2024-09-05 09:13:58 UTC


README

https://img.shields.io/badge/license-MIT-green.svg Packagist PHP Version Support (custom server) Packagist Version GitHub code size in bytes

数据库之间的数据迁移工具。

无论是否是关系型数据库,都可以进行数据迁移。

目录

特性

  • 数据库数据迁移工具。

  • 两个数据库之间的数据迁移是可能的。

  • 在类似 Google 表格的网页中,将源列中的数据迁移到目标列所在的同一行。

  • 默认仅支持 Mysql 和 pgsql 驱动程序。

    如果您想使用其他驱动程序,您可以添加驱动类。

要求

  • php 5.4 或更高版本

安装

使用 composer

cd path/to/your/project
composer require temori/distancexport --dev

使用

  • 创建一个 php 文件。

    如果您使用任何框架,创建可路由的控制器。

  • 定义以下常量。

    • 对于目标数据库。
      • DX_DESTINATION_DB_DRIVER 目标数据库驱动程序。
      • DX_DESTINATION_DB_HOST 目标数据库主机。
      • DX_DESTINATION_DB_PORT 目标数据库端口。
      • DX_DESTINATION_DB_USERNAME 目标数据库用户名。
      • DX_DESTINATION_DB_PASSWORD 目标数据库密码。
    • 对于源数据库。
      • DX_SOURCE_DB_DRIVER 源数据库驱动程序。
      • DX_SOURCE_DB_HOST 源数据库主机。
      • DX_SOURCE_DB_PORT 源数据库端口。
      • DX_SOURCE_DB_USERNAME 源数据库用户名。
      • DX_SOURCE_DB_PASSWORD 源数据库密码。
    • 当需要 csrf 令牌时。
      • DX_CSRF_TOKEN_NAME CSRF 令牌名称字段。
      • DX_CSRF_TOKEN CSRF 令牌字段。
  • 使用创建的 php 文件或控制器创建 \Temori\Distancexport\Distancexport 的实例,并执行 init() 方法,如下所示。

    $dis = new \Temori\Distancexport\Distancexport();
    $dis->init();
  • 如果您使用的框架需要路由设置,您需要创建 getpost 路由。

  • 打开上述 php 文件或控制器 URL。

  • 由于表名、数据类型、键类型等像电子表格一样排列,请将您要迁移的列名复制并粘贴到迁移目标数据库列旁边。

    迁移所需列是 目标数据库 中的 字段源数据库 中的 字段

    如果 源数据库 中的 字段 为空,则忽略数据迁移。

    如果您在 统一性 列中输入字符串作为选项,则在所有记录中添加 统一性 中描述的字符串。

  • Dry run 按钮执行测试执行,而 Run 按钮执行数据迁移。

    如果发生异常,将在 结果消息 中显示错误消息。

支持的 RDB 驱动类型

  • Mysql
  • postgresql

添加 RDB 驱动

如果您想,可以添加其他驱动类。

对于要创建的类,实现 BaseDriver 类并继承 Connect 类。

此外,创建一个产生与以下类相同执行结果的方法。

DataBases/Drivers/Mysql.php

如下所示指定在创建实例时添加的驱动程序类。

$dis = new \Temori\Distancexport\Distancexport(\Some\NameSpace\DestinationDriverClass::class, \Some\NameSpace\SourceDriverClass::class);

注意

[警告]

由于显示整个数据库结构,请在使用时注意安全。

许可

Paddington 在 MIT 许可下发布。
版权所有 © 2020,Atushi Inoue