Amazonrds 简明教程

Amazon RDS - MS SQL features

Microsoft SQL Server 是业界著名的关系型数据库。AWS RDS 支持多个版本的 MS SQL Server。以下为受支持的版本和版本列表。所有这些版本都支持时间点恢复,以及自动或手动备份。可以在 VPC 内使用运行 SQL Server 的数据库实例。您还可以使用 SSL 连接到运行 SQL Server 的数据库实例。Amazon RDS 目前使用 SQL Server 镜像作为高可用性故障转移解决方案,支持 SQL Server 的多 AZ 部署。

Supported Versions

AWS RDS 提供了从 2008 年开始的 MS SQL Server 的主要版本。以下为这些版本的详细信息。

  1. SQL Server 2017 RTM

  2. SQL Server 2016 SP1

  3. SQL Server 2014 SP2

  4. SQL Server 2012 SP4

  5. SQL Server 2008 R2 SP3

以下为如何使用 Python SDK 程序的 AWS API 获取受支持数据库引擎版本的一个示例。

import boto3

client = boto3.client('rds')

response = client.describe_db_engine_versions(
    DBParameterGroupFamily='',
    DefaultOnly=True,
    Engine='sqlserver-ee',
    EngineVersion='',
    ListSupportedCharacterSets=False, #True,
)

print(response)

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

{
   "ResponseMetadata": {
      "RetryAttempts": 0,
      "HTTPStatusCode": 200,
      "RequestId": "186a9d70-7580-4207-8727-4d29aebb5213",
      "HTTPHeaders": {
         "x-amzn-requestid": "186a9d70-7580-4207-8727-4d29aebb5213",
         "date": "Fri, 14 Sep 2018 05:39:11 GMT",
         "content-length": "1066",
         "content-type": "text/xml"
      }
   },
   "u'DBEngineVersions'": [
      {
         "u'Engine'": "sqlserver-ee",
         "u'DBParameterGroupFamily'": "sqlserver-ee-14.0",
         "u'SupportsLogExportsToCloudwatchLogs'": false,
         "u'SupportsReadReplica'": true,
         "u'DBEngineDescription'": "MicrosoftSQLServerEnterpriseEdition",
         "u'EngineVersion'": "14.00.3035.2.v1",
         "u'DBEngineVersionDescription'": "SQL Server 2017 14.00.3035.2.v1",
         "u'ValidUpgradeTarget'": []
      }
   ]
}

Microsoft SQL Server Licensing

RDS 数据库实例的软件许可证包含在使用 MS SQL Server 的定价中。用户不需要提供任何许可证。此外,定价中还包括软件许可证、硬件资源和 AWS RDS 管理功能。

以下是 MS SQL Server 版本中可用的 MS SQL Server 版本。

  1. Enterprise

  2. Standard

  3. Web

  4. Express

与 Oracle 不同,多 A-Z 部署不需要额外的授权要求。Microsoft Server 使用 SQL Server 数据库镜像进行此类部署。

对于因许可问题而终止的实例,AWS 会保留 DB 快照,可以在解决许可问题时从该快照还原 DB。

Microsoft SQL Server Security

MS SQL 服务器的数据库引擎使用基于角色的安全性。

创建 DB 实例时使用的主用户名是 SQL 服务器身份验证登录名,该用户名是 processadmin、public 和 setupadmin 固定服务器角色的成员。创建数据库的任何用户都分配给该数据库的 db_owner 角色,并具有除用于备份的所有数据库级权限。Amazon RDS 为用户管理备份。

Features not Supported in RDS

AWS RDS for MS SQL 服务器不支持许多功能。其中一些功能列在下面。在将内部部署数据库迁移到云时,这一点很重要,必须仔细评估这些功能的可用性。

  1. Always On

  2. 备份到 Microsoft Azure Blob 存储

  3. Buffer pool extension

  4. BULK INSERT 和 OPENROWSET(BULK…) 功能

  5. Data Quality Services

  6. 分布式查询(即,链接服务器)

  7. Distribution Transaction Coordinator (MSDTC)

  8. File tables

  9. FILESTREAM support

  10. Performance Data Collector

  11. Policy-Based Management

  12. SQL Server Audit

  13. Server-level triggers

  14. T-SQL 端点(使用 CREATE ENDPOINT 的所有操作都不可用)