dbmover/pgsql

PostgreSQL 供应商特定 DbMover 模块

0.10.4 2020-11-22 07:06 UTC

README

PostgreSQL 供应商特定 DbMover 元包

安装

Composer(推荐)

$ composer require dbmover/pgsql

设置和运行

有关设置和运行 DbMover 的说明,请参阅Dbmover README

添加 Dbmover\Pgsql\Plugin 元插件以简单地使用默认设置。

PostgreSQL 特殊说明

序列主键

PostgreSQL 使用自定义 SERIAL 数据类型来定义一个用作主键的自动递增唯一列。然而,这并不是一个 真正的 数据类型,而是一种更冗长的手动命令的缩写。所以(不出所料)DbMover 对它不知所措。请改用更冗长的完整命令

CREATE SEQUENCE IF NOT EXISTS foo_id_seq;
CREATE TABLE foo (
    id INTEGER NOT NULL PRIMARY KEY DEFAULT NEXTVAL('foo_id_seq'::regclass)
);

数据库用户和权限

PostgreSQL 的 INFORMATION_SCHEMA 别名包含比您在模式文件中定义的更多数据,尤其是对于例程(其本地函数也在此处公开)。您应该始终以只有迁移数据库的权限的用户运行 DbMover。所有插件都尽力只处理定义为 public 的对象,但安全第一。

待办事项/愿望清单

枚举支持

这些在 Postgres 中实现为某种自定义数据类型。支持已在路线图中,但由于我本人从未使用过它们,所以它们在我(令人讨厌的长)优先级列表中并不高 :)