管理方案演化
管理方案需要在源系统和目标系统之间跟踪和同步结构更改,例如表、列、索引和数据类型。有效的方案管理技术可确保在应用程序发展或部署数据库更改时继续顺利进行复制。它还有助于防止由于不匹配的结构、不受支持的数据类型或缺少的对象而导致的故障。
Oracle GoldenGate 提供了用于管理同构或类似数据复制以及异构或跨平台复制的方案的技术。对于本地复制,管理员可以使用现有的 DDL 复制功能,该功能随 Oracle 提供给 Oracle,MySQL 提供给 MySQL 数据库。
对于异构复制,管理员可以使用自动方案演化功能。Oracle GoldenGate 中的自动方案演化提供了方案验证、更改检测、自动映射以及受控的方案更新部署。此功能允许在各种异构源和目标数据库方案之间进行复制。
自动方案支持的目标 Oracle、MySQL、Amazon Aurora MySQL、Amazon RDS for MySQL、Azure Database for MySQL、MariaDB、SingleStoreDB、Google Cloud SQL for MySQL、PostgreSQL、Amazon Aurora PostgreSQL、Amazon RDS for PostgreSQL、YugabyteDB、EDB PostgreSQL Advanced Server、Azure Database for PostgreSQL、Google Cloud SQL for PostgreSQL、Microsoft SQL Server、Amazon RDS for SQL Server、Azure SQL Database、IBM Db2 (LUW)、IBM Db2 for i、Teradata 和 TimesTen。
支持自动模式的源 Oracle、MySQL、Amazon Aurora MySQL、Amazon RDS for MySQL、Azure Database for MySQL、MariaDB、SingleStoreDB、Google Cloud SQL for MySQL、PostgreSQL、Amazon Aurora PostgreSQL、Amazon RDS for PostgreSQL、YugabyteDBEDB PostgreSQL Advanced Server、Azure Database for PostgreSQL、Google Cloud SQL for PostgreSQL、Microsoft SQL Server、Amazon RDS for SQL Server、Azure SQL Database、Db2 (LUW)、Db2 for i、Db2 for z/OS、Sybase 和 Snowflake。
自动模式演化与 DDL 复制之间的差异
下面是自动方案演化与基于 DDL 复制的方案管理之间的比较:
| 自动方案演化 | DDL 复制 |
|---|---|
| 自动检测方案差异并根据需要更新目标方案。 | 使用 DDL 和 DML 操作将实际 DDL 语句(例如 ALTER TABLE、CREATE TABLE 或 DROP COLUMN)从源复制到目标。 |
| 用户更易于操作,因为无需手动干预即可处理许多方案更改。 | 需要复制系统支持并正确解释源 DDL。 |
| 在逻辑或元数据级别工作 | 可通过捕获和应用数据库模式更改命令来工作。 |
仅支持所选方案更改,例如添加列、在目标数据库上创建缺少的表、通过执行 ADD/MODIFY/DROP 列和更改兼容数据类型来更改目标表。 |
可以保留源端方案更改的确切意图。 |
| 当源系统和目标系统是不同的平台或云服务时非常有用。 | 当源数据库和目标数据库具有相似的 DDL 语法和对象行为时最适合。 |