Amazon RDS - PostgreSQL 功能



PostgreSQL 是一款功能强大的开源对象关系数据库系统,以其可靠性、功能健壮性和性能而闻名。AWS RDS 运行 PostgreSQL 的各种版本。它支持时间点恢复和备份、创建数据库快照以及在多可用区环境中运行。

支持的版本

版本 9.3 到 10.4 是 RDS 平台支持的主要版本。如果在数据库创建期间未提及任何版本,则默认为当时的最新版本。以下是如何使用 Python SDK 程序中的 AWS API 获取所有支持的数据库引擎版本的示例。

import boto3
client = boto3.client('rds')
response = client.describe_db_engine_versions(
    DBParameterGroupFamily='',
    DefaultOnly=True,
    Engine='postgres',
    EngineVersion='',
    ListSupportedCharacterSets=False, #True,
)

print(response)

运行上述程序后,我们将获得以下输出:

{
   "ResponseMetadata": {
      "RetryAttempts": 0,
      "HTTPStatusCode": 200,
      "RequestId": "c85cd49f-2c16-44b4-9890-cb233651f962",
      "HTTPHeaders": {
         "x-amzn-requestid": "c85cd49f-2c16-44b4-9890-cb233651f962",
         "date": "Fri, 14 Sep 2018 07:31:34 GMT",
         "content-length": "995",
         "content-type": "text/xml"
      }
   },
   "u'DBEngineVersions'": [
      {
         "u'Engine'": "postgres",
         "u'DBParameterGroupFamily'": "postgres10",
         "u'SupportsLogExportsToCloudwatchLogs'": false,
         "u'SupportsReadReplica'": true,
         "u'DBEngineDescription'": "PostgreSQL",
         "u'EngineVersion'": "10.4",
         "u'DBEngineVersionDescription'": "PostgreSQL 10.4-R1",
         "u'ValidUpgradeTarget'": []
      }
   ]
}

数据库预览环境

PostgreSQL 社区不断发布新版本和新扩展。您可以在 Aws RDS 完全支持新版 PostgreSQL 和扩展之前试用它们。为此,您可以在数据库预览环境中创建一个新的数据库实例。

数据库预览环境中的数据库实例类似于生产环境中的数据库实例。但是,请记住几个重要因素

  • 所有数据库实例将在创建后 60 天内被删除,以及任何备份和快照。

  • 您只能在基于 Amazon VPC 服务的虚拟私有云 (VPC) 中创建数据库实例。

  • 您只能创建 M4、T2 和 R4 实例类型。有关 RDS 实例类型的更多信息,

  • 您无法获得 AWS 支持团队对数据库实例的帮助。您可以在 RDS 数据库预览环境论坛中发布您的问题。

  • 您只能使用通用型 SSD 和预置 IOPS SSD 存储。

  • 您无法将数据库实例的快照复制到生产环境。

  • 某些 Amazon RDS 功能在预览环境中不可用,如下所述。

逻辑复制

逻辑复制是一种复制数据对象及其更改的方法,基于其复制标识(通常为主键)。逻辑复制使用发布/订阅模型,其中一个或多个订阅者订阅发布者节点上的一个或多个发布内容。订阅者从他们订阅的发布内容中提取数据,并可能随后重新发布数据以允许级联复制或更复杂的配置。它用于以下操作。

  • 在单个数据库或数据库子集中发送增量更改到订阅者,并在发生时发送。

  • 将多个数据库合并到一个数据库中(例如,用于分析目的)。

  • 在不同主要版本的 PostgreSQL 之间进行复制。

  • 在不同平台上的 PostgreSQL 实例之间进行复制(例如 Linux 到 Windows)

  • 向不同用户组提供对复制数据的访问权限。

  • 在多个数据库之间共享数据库的一个子集。

要为 Amazon RDS for PostgreSQL 数据库实例启用逻辑复制

  • AWS 用户帐户需要 rds_superuser 角色才能对 Amazon RDS 上的 PostgreSQL 数据库执行逻辑复制。

  • 将 rds.logical_replication 参数设置为 1。

  • 修改发布者实例(生产)的安全组的入站规则,以允许订阅者实例(副本)连接。这通常通过在安全组中包含订阅者的 IP 地址来完成。

广告

© . All rights reserved.