使用 Amazon RDS Custom - Amazon Relational Database Service
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

使用 Amazon RDS Custom

Amazon RDS Custom 自动执行数据库管理任务和操作。Amazon RDS Custom 使您能够作为数据库管理员访问和自定义数据库环境和操作系统。使用 RDS Custom,您可以进行自定义以满足传统、自定义和打包应用程序的要求。

有关 RDS Custom 的最新网络研讨会和博客,请参阅 Amazon RDS Custom 资源

解决数据库自定义的挑战

由于第三方应用程序需要进行自定义,Amazon RDS Custom 将 Amazon RDS 的优势带到一个无法轻易转向完全托管式服务的市场。Amazon RDS Custom 可以节省管理时间、具有耐久性,并且可以随着您的业务扩缩。

如果您需要整个数据库和操作系统由 Amazon 完全托管,我们建议使用 Amazon RDS。如果您需要对数据库和底层操作系统的管理权限才能使相关应用程序可用,Amazon RDS Custom 是更好的选择。如果您想要全面的管理责任并且只需要托管式计算服务,那么最好的选择是在 Amazon EC2 上自行管理您的商业数据库。

为了提供托管式服务体验,Amazon RDS 不允许您访问底层主机。并且 Amazon RDS 还限制了对需要高级权限的某些程序和对象的访问。但是,对于某些应用程序,您可能需要以特权操作系统 (OS) 用户身份执行操作。

例如,您可能需要执行以下操作:

  • 安装自定义数据库以及操作系统补丁和程序包。

  • 配置特定的数据库设置。

  • 将文件系统配置为直接与其应用程序共享文件。

以前,如果您需要自定义应用程序,则必须在本地或 Amazon EC2 上部署数据库。在这种情况下,您承担数据库管理的大部分或全部责任,如下表所述。

特征

本地责任

Amazon EC2 责任

Amazon RDS 责任

应用程序优化

客户

客户

客户

扩展

客户

客户

Amazon

高可用性

客户

客户

Amazon

数据库备份

客户

客户

Amazon

数据库软件修补

客户

客户

Amazon

数据库软件安装

客户

客户

Amazon

操作系统修补

客户

客户

Amazon

操作系统安装

客户

客户

Amazon

服务器维护

客户

Amazon

Amazon

硬件生命周期

客户

Amazon

Amazon

电源、网络和冷却

客户

Amazon

Amazon

当您自行管理数据库软件时,您可以获得更多的控制权,但也更容易出现用户错误。例如,当您进行手动更改时,可能会意外导致应用程序停机。您可能会花几个小时来检查每一项更改,以识别和修复问题。理想情况下,您需要一种托管式数据库服务,该服务可自动执行常见的数据管理员任务,但也支持对数据库和底层操作系统的特权访问。

Amazon RDS Custom 的管理模式和益处

Amazon RDS Custom 是一种托管式数据库服务,适用于需要访问底层操作系统和数据库环境的旧版、自定义和打包应用程序。RDS Custom 可在 Amazon Web Services 云中自动执行数据库的设置、操作和扩展,同时授予您对数据库和底层操作系统的访问权限。通过此访问权限,您可以配置设置、安装补丁和启用本机特征以满足相关应用程序的要求。使用 RDS Custom,您可以使用 Amazon Web Services Management Console 或 Amazon CLI 运行数据库工作负载。

RDS Custom 只支持 Oracle Database 引擎和 Microsoft SQL Server 引擎。

RDS Custom 中的责任共担模式

借助 RDS Custom,您可以使用 Amazon RDS 的托管式特征,但您可以像在 Amazon EC2 中一样管理主机和自定义操作系统。除了在 Amazon RDS 中执行的任务之外,您还可以承担更多的数据库管理责任。结果是,与在 Amazon RDS 中相比,您可以更好地控制数据库和数据库实例管理,同时还能从 RDS 自动化中受益。

责任共担意味着以下几点:

  1. 使用 RDS Custom 特征时,您拥有该过程的一部分。

    例如,在 RDS Custom for Oracle 中,您可以控制要使用哪些 Oracle 数据库补丁以及何时将其应用于您的数据库实例。

  2. 您有责任确保对 RDS Custom 特征的任何自定义都能正确工作。

    为了防止无效的自定义,RDS Custom 提供了在数据库实例之外运行的自动化软件。如果您的底层 Amazon EC2 实例受损,RDS Custom 会尝试通过重启或更换 EC2 实例来自动解决这些问题。用户可见的唯一变化是新的 IP 地址。有关更多信息,请参阅 Amazon RDS Custom 主机替换

下表详细介绍 RDS Custom 的不同特征的责任共担模式。

特征

Amazon EC2 责任

Amazon RDS 责任

RDS Custom for Oracle 责任

RDS Custom for SQL Server 责任

应用程序优化

客户

客户

客户

客户

扩展

客户

Amazon

共享

共享

高可用性

客户

Amazon

客户

Amazon

数据库备份

客户

Amazon

共享

Amazon

数据库软件修补

客户

Amazon

共享

Amazon for RPEV、Customer for CEV1

数据库软件安装

客户

Amazon

共享

Amazon for RPEV、Customer for CEV1

操作系统修补

客户

Amazon

客户

Amazon for RPEV、Customer for CEV1

操作系统安装

客户

Amazon

共享

Amazon

服务器维护

Amazon

Amazon

Amazon

Amazon

硬件生命周期

Amazon

Amazon

Amazon

Amazon

电源、网络和冷却

Amazon

Amazon

Amazon

Amazon

1 客户引擎版本(CEV)是数据库版本和 Amazon Machine Image(AMI)的二进制卷快照。RDS 提供的引擎版本(RPEV)是默认 Amazon Machine Image(AMI)和 Microsoft SQL Server 安装。

您可以使用 Microsoft SQL Server 创建 RDS Custom 数据库实例。在本例中:

  • 您可以从两种许可模式中进行选择:附带许可证(LI)和自带媒体(BYOM)。

  • 使用 LI,您无需单独购买 SQL Server 许可证。Amazon 持有 SQL Server 数据库软件的许可证。

  • 使用 BYOM,您可以提供并安装自己的 Microsoft SQL Server 二进制文件和许可。

您可以使用 Oracle 数据库创建 RDS Custom 数据库实例。在此情况下,您可以执行以下操作:

  • 管理自己的媒体。

    使用 RDS Custom 时,您可以上载自己的数据库安装文件和补丁。您可以从这些文件中创建自定义引擎版本 (CEV)。然后,您可以通过使用此 CEV 创建 RDS Custom 数据库实例。

  • 管理自己的许可证。

    您可以自带 Oracle 数据库许可证并自行管理许可证。

RDS Custom 中的支持外围和不受支持的配置

RDS Custom 提供了一个名为支持外围 的监控功能。此特征可确保您的主机和数据库环境得以正确配置。如果您所做的更改导致数据库实例超出支持外围,则 RDS Custom 会将实例状态更改为 unsupported-configuration,直到您手动修复配置问题。有关更多信息,请参阅 RDS Custom 支持外围

RDS Custom 的主要益处

利用 RDS Custom,您可以执行以下操作:

  • 自动执行许多与 Amazon RDS 相同的管理任务,包括以下任务:

    • 数据库生命周期管理

    • 自动备份和时间点恢复 (PITR)

    • 监控 RDS Custom 数据库实例的运行状况并观察对基础设施、操作系统和数据库进程的更改。

    • 根据数据库实例的中断情况,通知或采取措施以修复问题

  • 安装第三方应用程序。

    您可以安装软件来运行自定义应用程序和代理。由于您拥有对主机的特权访问权限,因此可以修改文件系统以支持旧版应用程序。

  • 安装自定义补丁。

    您可以在 RDS Custom 数据库实例上应用自定义数据库补丁或修改操作系统包。

  • 在将本地数据库移动到完全托管式服务之前,将其暂存。

    如果您管理自己的本地数据库,则可以按原样将数据库暂存到 RDS Custom。熟悉云环境后,您可以将数据库迁移到完全托管式 Amazon RDS 数据库实例。

  • 创建您自己的自动化。

    您可以为报告、管理或诊断工具创建、计划和运行自定义自动化脚本。