- 亚马逊 RDS - 主页
- Amazon RDS - 概述
- Amazon RDS - 环境
- Amazon RDS - 接口
- Amazon RDS - 数据库实例
- Amazon RDS - 数据库存储
- Amazon RDS - MS SQL 功能
- Amazon RDS - MS SQL 创建数据库
- Amazon RDS - MS SQL 连接到数据库
- Amazon RDS - MS SQL 数据库导出导入
- Amazon RDS - 使用 SSL 的 MS SQL 数据库
- Amazon RDS - MS SQL DBA 任务
- Amazon RDS - Oracle 功能
- Amazon RDS - Oracle 创建数据库
- Amazon RDS - Oracle 连接到数据库
- Amazon RDS - Oracle 数据库数据导入
- Amazon RDS - Oracle DBA 任务
- Amazon RDS - MariaDB 功能
- Amazon RDS - MariaDB 创建数据库
- Amazon RDS - MariaDB 连接到数据库
- Amazon RDS - MariaDB 数据导入
- Amazon RDS - PostgreSQL 功能
- Amazon RDS - PostgreSQL 创建数据库
- Amazon RDS - PostgreSQL 连接到数据库
- Amazon RDS - PostgreSQL 数据导入
- Amazon RDS - MySQL 功能
- Amazon RDS - MySQL 创建数据库
- Amazon RDS - MySQL 连接到数据库
- Amazon RDS - MySQL 数据库导出导入
- Amazon RDS - MySQL DBA 任务
- Amazon RDS - 多可用区部署
- Amazon RDS - 数据库快照
- Amazon RDS - 数据库监控
- Amazon RDS - 事件通知
- Amazon RDS - 数据库访问控制
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 服务的 Virtual Private Cloud (VPC) 中创建数据库实例。
您只能创建 M4、T2 和 R4 实例类型。有关 RDS 实例类的更多信息,
您无法从 AWS Support 获得有关数据库实例的帮助。您可以在 RDS 数据库预览环境论坛中发布您的问题。
您只能使用通用 SSD 和预配置 IOPS SSD 存储。
您无法将数据库实例的快照复制到生产环境。
某些 Amazon RDS 功能在预览环境中不可用,如下所述。
逻辑复制
逻辑复制是一种根据数据对象的复制标识(通常是主键)复制数据对象及其更改的方法。逻辑复制使用发布和订阅模型,其中一个或多个订阅者订阅发布者节点上的一个或多个发布。订阅者从他们订阅的出版物中提取数据,然后可以重新发布数据以允许级联复制或更复杂的配置。它用于以下操作。
当单个数据库或数据库子集发生增量更改时,将其发送给订阅者。
将多个数据库合并为一个数据库(例如用于分析目的)。
在 PostgreSQL 的不同主要版本之间进行复制。
在不同平台上的 PostgreSQL 实例之间进行复制(例如 Linux 到 Windows)
向不同的用户组授予对复制数据的访问权限。
在多个数据库之间共享数据库的子集。
为 Amazon RDS for PostgreSQL 数据库实例启用逻辑复制
AWS 用户账户需要 rds_superuser 角色才能对 Amazon RDS 上的 PostgreSQL 数据库执行逻辑复制。
将 rds.logic_replication 参数设置为 1。
修改发布者实例(生产)的安全组入站规则,以允许订阅者实例(副本)连接。这通常是通过将订阅者的 IP 地址包含在安全组中来完成的。