本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
为 DMS 架构转换创建数据提供器
接下来,创建描述源数据库和目标数据库的数据提供程序。对于每个数据提供程序,可以指定数据存储类型和位置信息。您不会将数据库凭证存储在数据提供程序中。
- AWS Management Console
-
创建数据提供程序
-
登录 AWS 管理控制台,然后打开 AWS DMS 控制台。
-
在导航窗格中,选择数据提供程序,然后选择创建数据提供程序。
-
对于名称,为源数据提供程序输入唯一名称。例如,输入
sc-dp。 -
对于目的,请选择架构转换。
-
对于引擎类型,为数据提供程序选择数据库引擎类型。
-
要在不连接到数据库的情况下使用此数据提供器进行架构转换,请打开虚拟模式。
虚拟模式适用于两种用例:
离线源-无需连接到源数据库即可从导出的脚本文件转换架构。离线源目前可用于微软 SQL Server。
虚拟目标-无需配置目标基础架构即可转换架构。适用于所有支持的目标数据库。
虚拟模式开启后,控制台会使用默认值自动设置连接信息。
有关使用虚拟模式的更多信息,请参阅离线源和虚拟目标的虚拟模式。
-
对于引擎配置,请选择以下选项之一:
-
从列表中选择 RDS 数据库实例 — 选择浏览,然后选择您的 Amazon RDS 数据库。DMS 架构转换会自动检索引擎类型、服务器名称和端口。对于数据库名称,输入数据库的名称。
-
手动输入-输入数据库的连接信息。连接参数取决于数据库引擎。有关更多信息,请参阅 创建实例提供程序。
-
-
对于安全套接字层(SSL)模式,选择 SSL 强制执行类型。
-
选择创建数据提供程序。
-
- AWS CLI
-
要创建数据提供器,请使用 create-data-p rovider 命令。
aws dms create-data-provider \ --data-provider-namemy-data-provider\ --engineengine-type\ --settings '{"EngineSettings":{ "ServerName":"server-name", "Port":port, "DatabaseName":"database-name", "SslMode":"ssl-mode" }}'替换以下内容:
my-data-provider— 您的数据提供商的唯一名称。engine-type– 数据库引擎。有效值包括sqlserver、postgres、oracle、mysql、aurora、aurora-postgresql。EngineSettings— 引擎特定的设置对象,例如MicrosoftSqlServerSettingsPostgreSqlSettings、或。OracleSettingsserver-name— 您的数据库服务器的 DNS 名称或 IP 地址。此值将成为选择规则server-name中的值。port— 用于连接数据库服务器的端口。database-name-数据库的名称。ssl-mode— SSL 模式。有效值:none、require、verify-ca、verify-full。
创建离线来源
要创建离线源数据提供器,请在引擎配置中使用带有
--virtual标志和 S3 设置的 create-data-pro vider 命令。aws dms create-data-provider \ --data-provider-namemy-offline-source\ --engine sqlserver \ --settings '{"MicrosoftSqlServerSettings": {"ServerName": "my-source-server", "Port": 1433, "DatabaseName": "MyDatabase", "SslMode": "none", "S3Path": "s3://amzn-s3-demo-bucket/my-prefix", "S3AccessRoleArn": "arn:aws:iam::111122223333:role/my-s3-read-role"}}' \ --virtual下表描述了每种设置。离线来源需要进行所有设置。
离线来源设置 设置 必需 描述 ServerName是 此数据提供者的标识符。与选择规则一样 server-name使用。不需要是真实的主机名。Port是 引擎的标准端口(SQL Server 为 1433)。未建立任何连接。 DatabaseName是 数据库名称值。未建立任何连接。 SslMode是 使用 none。未建立任何连接。S3Path是 包含导出的 DDL 脚本的 S3 URI 前缀(例如, s3://amzn-s3-demo-bucket/my-prefix)。S3AccessRoleArn是 授予 DMS 对 S3 存储桶的读取权限的 IAM 角色的 ARN。有关更多信息,请参阅 为离线源配置 S3 访问权限。 有关离线源先决条件和 S3 权限的更多信息,请参阅离线来源。
创建虚拟目标
要创建虚拟目标数据提供器,请使用带有标志的 create-data-provid er 命令。
--virtual请勿包括S3Path或S3AccessRoleArn— 虚拟目标的这些设置将被拒绝。aws dms create-data-provider \ --data-provider-namemy-virtual-target\ --engine postgres \ --settings '{"PostgreSqlSettings": {"ServerName": "my-target-server", "Port": 5432, "DatabaseName": "postgres", "SslMode": "none"}}' \ --virtual下表描述了每种设置。
虚拟目标设置 设置 必需 描述 ServerName是 此数据提供者的标识符。与选择规则一样 server-name使用。不需要是真实的主机名。Port是 引擎的标准端口(PostgreSQL 为 5432,MySQL 为 3306)。未建立任何连接。 DatabaseName是 数据库名称占位符。未建立任何连接。 SslMode是 使用 none。未建立任何连接。S3PathN/A 不包括。针对虚拟目标被拒绝。 S3AccessRoleArnN/A 不包括。针对虚拟目标被拒绝。 有关虚拟模式的更多信息,请参阅虚拟目标。