使用 Babelfish 创建 Aurora PostgreSQL 集群 - Amazon Aurora
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 Amazon Web Services 服务入门

使用 Babelfish 创建 Aurora PostgreSQL 集群

您可以在 Aurora PostgreSQL 上使用 Babelfish。Aurora PostgreSQL 版本 13.4 及更高版本目前支持 Babelfish。

您可以通过 Amazon Web Services Management Console 或 Amazon CLI,使用 Babelfish 创建 Aurora PostgreSQL 集群。

注意

在 Aurora PostgreSQL 集群中,系统会为 Babelfish 预留 babelfish_db 数据库名称。在 Babelfish for Aurora PostgreSQL 上自行创建名为 babelfish_db 的数据库会阻止 Aurora 成功预置 Babelfish。

在使用 Amazon Web Services Management Console 运行 Babelfish 的情况下创建一个集群

  1. https://console.aws.amazon.com/rds/ 打开 Amazon RDS 控制台,然后选择 Create database(创建数据库)。

    
							在运行 Babelfish 的情况下创建 Aurora PostgreSQL 集群
  2. 对于选择数据库创建方法,请执行以下操作之一:

    • 要指定详细的引擎选项,请选择 Standard create(标准创建)。

    • 要使用支持 Aurora 集群最佳实践的预配置选项,请选择 Easy create(轻松创建)。

  3. 对于 Engine type(引擎类型),选择 Amazon Aurora

  4. 对于 Edition(版本),请选择 Amazon Aurora PostgreSQL

  5. 选择 Show filters(显示筛选条件),然后选择 Show versions that support the Babelfish for PostgreSQL feature(显示支持 PostgreSQL 的 Babelfish 功能的版本)列出支持 Babelfish 的引擎类型。Aurora PostgreSQL 13.4 及更高版本目前支持 Babelfish。

  6. 对于可用的版本,选择一个 Aurora PostgreSQL 版本。

    
							选择一个 Aurora PostgreSQL 版本。
  7. 对于 Templates(模板),选择与您的使用案例匹配的模板。

  8. 对于数据库集群标识符,输入稍后可以在数据库集群列表中轻松找到的名称。

  9. 对于主用户名中,输入管理员用户名。

    与 SQL Server 不同,Babelfish 不会创建 sa 登录。要创建名为 sa 的登录,请输入 Master username(主用户名)的名称。

    如果您在此时尚未创建名为 sa 的用户,您可以稍后用自己选择的客户端创建一个。创建用户后,请使用 ALTER SERVER ROLE 命令将其添加到 sysadmin

  10. 对于主密码中,为刚刚命名的管理用户输入强密码,然后确认密码。

  11. 对于接下来的选项,指定数据库集群设置,直到 Babelfish 设置部分。有关每项设置的信息,请参阅 Aurora 数据库集群的设置

  12. 要使 Babelfish 功能可用,请选择 Turn on Babelfish(打开 Babelfish)框。

    
							在您的 Aurora PostgreSQL 集群中打开 Babelfish。
  13. 对于数据库集群参数组,请执行以下操作之一:

    • 选择 Create new(新建)以在打开 Babelfish 的情况下创建新的参数组。

    • 选择 Choose existing(选择现有)以使用现有的参数组。如果您使用现有组,请确保在创建集群之前修改组并为 Babelfish 参数添加值。有关 Babelfish 参数的信息,请参阅 为 Babelfish 配置数据库

      如果您使用现有组,请在后面的框中提供组名称。

  14. 对于 Database migration mode(数据库迁移模式),请选择下列选项之一:

    • 单个数据库,可迁移单个 SQL Server 数据库。

      在某些情况下,您可能会同时迁移多个用户数据库,最终目标是在没有 Babelfish 的情况下完全迁移到本机 Aurora PostgreSQL。如果最终的应用程序需要整合架构(单个 dbo 架构),请确保首先将 SQL Server 数据库整合到单个 SQL Server 数据库中。然后使用单个数据库模式迁移到 Babelfish。

    • 多个数据库,迁移多个 SQL Server 数据库(源自单个 SQL Server 安装)。多数据库模式不会合并不源于单个 SQL Server 安装的多个数据库。有关迁移多个数据库的信息,请参阅 将 Babelfish 与单个数据库或多个数据库结合使用

    
							为 SQL Server 数据库选择迁移模式。
  15. 对于 Default collation locale(原定设置排序规则区域设置),输入您的服务器区域设置。默认 为 en-US。有关排序规则的详细信息,请参阅 Babelfish 排序规则支持

  16. 对于 Collation name(排序规则名称)字段,输入原定设置排序规则。默认 为 sql_latin1_general_cp1_ci_as。有关详细信息,请参阅Babelfish 排序规则支持

  17. 对于 Babelfish TDS 端口,输入 SQL Server 客户端连接到的端口号。默认 为 1433

  18. 对于数据库参数组,选择一个参数组或使用原定设置使用 Aurora 为您创建一个新组。

  19. 对于 Failover priority(故障转移优先级),选择实例的故障转移优先级。如果您未选择值,则原定设置值为 tier-1。此优先级决定在主实例故障恢复时提升 副本的顺序。有关更多信息,请参阅 Aurora 数据库集群的容错能力

  20. 对于 Backup retention period(备份保留期),选择 Aurora 保留数据库的备份副本的时间长度(1–35 天)。您可使用备份副本对数据库执行时间点还原 (PITR),精度可到秒。原定设置的保留期为七天。

    
							选择一个 Aurora PostgreSQL 版本。
  21. 选择 Copy tags to snapshots(将标签复制到快照)以在创建快照时将任何数据库实例标签复制到数据库快照。

  22. 请选择 Enable encryption(启用加密)以对该数据库集群开启静态加密(Aurora 存储加密)。

  23. 选择 Enable Performance Insights(启用性能详情)打开 Amazon RDS 性能详情。

  24. 选择 Enable Enhanced monitoring(启用增强监控)以开始您的数据库集群在其上运行的操作系统的实时指标收集。

  25. 选择 PostgreSQL 日志将日志文件发布到 Amazon CloudWatch Logs。

  26. 选择 Enable auto minor version upgrade(启用自动次要版本升级)在次要版本升级可用时自动更新 Aurora 数据库集群。

  27. 对于维护时段,请执行以下操作:

    • 要选择 Amazon RDS 进行修改或执行维护的时间,请选择 Select window(选择时段)。

    • 要在计划外的时间执行 Amazon RDS 维护,请选择 No preference(无首选项)。

  28. 选择 Enable deletion protection(启用删除保护)框以保护您的数据库免于意外删除。

    如果启用此功能,则无法直接删除数据库。相反,在删除数据库之前,您需要修改数据库集群并关闭此功能。

    
							从其他 Aurora PostgreSQL 管理功能中进行选择。
  29. 选择 Create database(创建数据库)。

您可以在 Databases(数据库)列表中找到为 Babelfish 设置的新数据库。Status(状态)列在部署完成时显示 Available(可用)。


					运行有 Babelfish 的 Aurora PostgreSQL 集群

在使用 Amazon CLI 运行 Babelfish 的情况下创建 Aurora 数据库集群之前,请确保满足所需的先决条件,例如创建参数组。有关更多信息,请参阅 数据库集群先决条件

在您可以使用 Amazon CLI 创建具有 Babelfish 的 Aurora PostgreSQL 集群之前,请执行以下操作:

要使用 Amazon CLI 创建带有 Babelfish 的 Aurora PostgreSQL 数据库集群

  1. 创建参数组。

    对于 Linux、macOS 或 Unix:

    aws rds create-db-cluster-parameter-group \ --endpoint-url my_endpoint_URL \ --db-cluster-parameter-group-name my_parameter_group \ --db-parameter-group-family aurora-postgresql13 \ --description "parameter_group_description"

    对于 Windows:

    aws rds create-db-cluster-parameter-group ^ --endpoint-url my_endpoint_URL ^ --db-cluster-parameter-group-name my_parameter_group ^ --db-parameter-group-family aurora-postgresql13 ^ --description "parameter_group_description"
  2. 修改参数组以打开 Babelfish。

    对于 Linux、macOS 或 Unix:

    aws rds modify-db-cluster-parameter-group \ --endpoint-url my_endpoint_URL \ --db-cluster-parameter-group-name my_parameter_group \ --parameters "ParameterName=rds.babelfish_status,ParameterValue=on,ApplyMethod=pending-reboot"

    对于 Windows:

    aws rds modify-db-cluster-parameter-group ^ --endpoint-url my_endpoint_URL ^ --db-cluster-parameter-group-name my_parameter_group ^ --parameters "ParameterName=rds.babelfish_status,ParameterValue=on,ApplyMethod=pending-reboot"
  3. 为新的数据库集群指定数据库子网组和 Virtual Private Cloud (VPC) 安全组 ID,然后调用 create-db-cluster 命令。

    对于 Linux、macOS 或 Unix:

    aws rds create-db-cluster \ --db-cluster-identifier my_cluster_name \ --master-username user_name \ --master-user-password my_password \ --engine aurora-postgresql \ --engine-version 13.4 \ --vpc-security-group-ids my_security_group \ --db-subnet-group-name my_subnet_group \ --db-cluster-parameter-group-name my_parameter_group

    对于 Windows:

    aws rds create-db-cluster ^ --db-cluster-identifier my_cluster_name ^ --master-username user_name ^ --master-user-password my_password ^ --engine aurora-postgresql ^ --engine-version 13.4 ^ --vpc-security-group-ids my_security_group ^ --db-subnet-group-name my_subnet_group ^ --db-cluster-parameter-group-name my_parameter_group
  4. 显式创建主实例。使用您先前为 --db-cluster-identifier 选项的值创建的集群的名称,并如下所示运行 create-db-instance 命令。

    对于 Linux、macOS 或 Unix:

    aws rds create-db-instance \ --db-instance-identifier my_instance_name \ --db-instance-class db.r5.4xlarge \ --db-subnet-group-name my_subnet_group \ --db-cluster-identifier my_cluster_name \ --engine aurora-postgresql

    对于 Windows:

    aws rds create-db-instance ^ --db-instance-identifier my_instance_name ^ --db-instance-class db.r5.4xlarge ^ --db-subnet-group-name my_subnet_group ^ --db-cluster-identifier my_cluster_name ^ --engine aurora-postgresql