

# 确定 AWS 区域 中的数据库实例类支持
<a name="Concepts.DBInstanceClass.RegionSupport"></a>

要确定特定 AWS 区域 中每个数据库引擎支持的数据库实例类，您可以采用以下几种方法之一。您可以使用 AWS 管理控制台、[Amazon RDS 定价](https://aws.amazon.com/rds/pricing/)页面或 AWS Command Line Interface（AWS CLI）的 [describe-orderable-db-instance-options](https://docs.aws.amazon.com/cli/latest/reference/rds/describe-orderable-db-instance-options.html) 命令。

**注意**  
当您使用 AWS 管理控制台 执行操作时，它会自动显示特定数据库引擎、数据库引擎版本和 AWS 区域 支持的数据库实例类。您可以执行的操作示例包括创建和修改数据库实例。

**Contents**
+ [使用 Amazon RDS 定价页面确定 AWS 区域 中的数据库实例类支持](#Concepts.DBInstanceClass.RegionSupport.PricingPage)
+ [使用 AWS CLI 确定 AWS 区域 中的数据库实例类支持](#Concepts.DBInstanceClass.RegionSupport.CLI)
  + [列出 AWS 区域 中特定数据库引擎版本支持的数据库实例类](#Concepts.DBInstanceClass.RegionSupport.CLI.Example1)
  + [列出支持 AWS 区域 中特定数据库实例类的数据库引擎版本](#Concepts.DBInstanceClass.RegionSupport.CLI.Example2)
  + [列出支持特定数据库引擎和实例类的 AWS 区域](#Concepts.DBInstanceClass.RegionSupport.CLI.Example3)

## 使用 Amazon RDS 定价页面确定 AWS 区域 中的数据库实例类支持
<a name="Concepts.DBInstanceClass.RegionSupport.PricingPage"></a>

您可以使用 [Amazon RDS 定价](https://aws.amazon.com/rds/pricing/)页面确定特定 AWS 区域 中每个数据库引擎支持的数据库实例类。

**使用定价页面确定区域中每个引擎支持的数据库实例类**

1. 转到 [Amazon RDS 定价](https://aws.amazon.com/rds/pricing/)。

1. 在 **Amazon RDS 的 AWS 定价计算器**部分，选择**立即创建您的自定义估算值**。

1. 在**选择区域**中，选择一个 AWS 区域。

1. 在**查找服务**中，输入 **Amazon RDS**。

1. 针对您的配置选项和数据库引擎选择**配置**。

1. 使用兼容实例部分查看支持的数据库实例类。

1. （可选）在计算器中选择其它选项，然后选择**保存并查看摘要**或**保存并添加服务**。

## 使用 AWS CLI 确定 AWS 区域 中的数据库实例类支持
<a name="Concepts.DBInstanceClass.RegionSupport.CLI"></a>

您可以使用 AWS CLI 来确定 AWS 区域 中的特定数据库引擎和数据库引擎版本支持哪些数据库实例类。下表显示了有效的数据库引擎值。


****  

| 引擎名称 | CLI 命令中的引擎值 | 有关版本的更多信息 | 
| --- | --- | --- | 
|  Db2  |  `db2-ae` `db2-se`  |  [Amazon RDS 上的 Db2 版本](Db2.Concepts.VersionMgmt.md)  | 
|  MariaDB  |  `mariadb`  |  [Amazon RDS 上的 MariaDB 版本](MariaDB.Concepts.VersionMgmt.md)  | 
|  Microsoft SQL Server  |  `sqlserver-ee` `sqlserver-se` `sqlserver-ex` `sqlserver-web`  |  [Amazon RDS 上的 Microsoft SQL Server 版本](SQLServer.Concepts.General.VersionSupport.md)  | 
|  MySQL  |  `mysql`  |  [Amazon RDS 上的 MySQL 版本](MySQL.Concepts.VersionMgmt.md)  | 
|  Oracle  |  `oracle-ee` `oracle-se2`  |  [https://docs.aws.amazon.com/AmazonRDS/latest/OracleReleaseNotes/Welcome.html](https://docs.aws.amazon.com/AmazonRDS/latest/OracleReleaseNotes/Welcome.html)  | 
|  PostgreSQL  |  `postgres`  |  [可用的 PostgreSQL 数据库版本](PostgreSQL.Concepts.General.DBVersions.md)  | 

有关 AWS 区域 名称的信息，请参阅 [AWS 地区可用区](Concepts.RegionsAndAvailabilityZones.md#Concepts.RegionsAndAvailabilityZones.Regions)。

以下示例演示了如何使用 [describe-orderable-db-instance-options](https://docs.aws.amazon.com/cli/latest/reference/rds/describe-orderable-db-instance-options.html) AWS CLI 命令确定 AWS 区域 中的数据库实例类支持。

**注意**  
为了限制输出，以下示例仅显示通用型 SSD (`gp2`) 存储类型的结果。如有必要，您可以在命令中将存储类型更改为通用型 SSD 存储 (`gp3`)、预调配 IOPS (`io1`)、预调配 IOPS Block Express (`io2`) 或磁介质 (`standard`)。

**Topics**
+ [列出 AWS 区域 中特定数据库引擎版本支持的数据库实例类](#Concepts.DBInstanceClass.RegionSupport.CLI.Example1)
+ [列出支持 AWS 区域 中特定数据库实例类的数据库引擎版本](#Concepts.DBInstanceClass.RegionSupport.CLI.Example2)
+ [列出支持特定数据库引擎和实例类的 AWS 区域](#Concepts.DBInstanceClass.RegionSupport.CLI.Example3)

### 列出 AWS 区域 中特定数据库引擎版本支持的数据库实例类
<a name="Concepts.DBInstanceClass.RegionSupport.CLI.Example1"></a>

要列出 AWS 区域 中特定数据库引擎版本支持的数据库实例类，请运行以下命令。

对于 Linux、macOS 或 Unix：

```
aws rds describe-orderable-db-instance-options --engine engine --engine-version version \
    --query "*[].{DBInstanceClass:DBInstanceClass,StorageType:StorageType}|[?StorageType=='gp2']|[].{DBInstanceClass:DBInstanceClass}" \
    --output text \
    --region region
```

对于：Windows

```
aws rds describe-orderable-db-instance-options --engine engine --engine-version version ^
    --query "*[].{DBInstanceClass:DBInstanceClass,StorageType:StorageType}|[?StorageType=='gp2']|[].{DBInstanceClass:DBInstanceClass}" ^
    --output text ^
    --region region
```

例如，以下命令列出了美国东部（弗吉尼亚州北部）的 RDS for PostgreSQL 数据库引擎 13.6 版支持的数据库实例类。

对于 Linux、macOS 或 Unix：

```
aws rds describe-orderable-db-instance-options --engine postgres --engine-version 15.4 \
    --query "*[].{DBInstanceClass:DBInstanceClass,StorageType:StorageType}|[?StorageType=='gp2']|[].{DBInstanceClass:DBInstanceClass}" \
    --output text \
    --region us-east-1
```

对于：Windows

```
aws rds describe-orderable-db-instance-options --engine postgres --engine-version 15.4 ^
    --query "*[].{DBInstanceClass:DBInstanceClass,StorageType:StorageType}|[?StorageType=='gp2']|[].{DBInstanceClass:DBInstanceClass}" ^
    --output text ^
    --region us-east-1
```

### 列出支持 AWS 区域 中特定数据库实例类的数据库引擎版本
<a name="Concepts.DBInstanceClass.RegionSupport.CLI.Example2"></a>

要列出支持 AWS 区域 中特定数据库实例类的数据库引擎版本，请运行以下命令。

对于 Linux、macOS 或 Unix：

```
aws rds describe-orderable-db-instance-options --engine engine --db-instance-class DB_instance_class \
    --query "*[].{EngineVersion:EngineVersion,StorageType:StorageType}|[?StorageType=='gp2']|[].{EngineVersion:EngineVersion}" \
    --output text \
    --region region
```

对于：Windows

```
aws rds describe-orderable-db-instance-options --engine engine --db-instance-class DB_instance_class ^
    --query "*[].{EngineVersion:EngineVersion,StorageType:StorageType}|[?StorageType=='gp2']|[].{EngineVersion:EngineVersion}" ^
    --output text ^
    --region region
```

例如，以下命令列出了支持 US East (N. Virginia) 中 db.r5.large 数据库实例类的 RDS for PostgreSQL 数据库引擎的数据库引擎版本。

对于 Linux、macOS 或 Unix：

```
aws rds describe-orderable-db-instance-options --engine postgres --db-instance-class db.m7g.large \
    --query "*[].{EngineVersion:EngineVersion,StorageType:StorageType}|[?StorageType=='gp2']|[].{EngineVersion:EngineVersion}" \
    --output text \
    --region us-east-1
```

对于：Windows

```
aws rds describe-orderable-db-instance-options --engine postgres --db-instance-class db.m7g.large ^
    --query "*[].{EngineVersion:EngineVersion,StorageType:StorageType}|[?StorageType=='gp2']|[].{EngineVersion:EngineVersion}" ^
    --output text ^
    --region us-east-1
```

### 列出支持特定数据库引擎和实例类的 AWS 区域
<a name="Concepts.DBInstanceClass.RegionSupport.CLI.Example3"></a>

以下 bash 脚本列出了所有支持指定数据库引擎和实例类组合的 AWS 区域。

```
#!/usr/bin/env bash
# Usage: check_region_support.sh <db-engine> <db-instance-class>

if [ $# -ne 2 ]; then
  echo "Usage: $0 <db-engine> <db-instance-class>"
  exit 1
fi
ENGINE="$1"
INSTANCE_CLASS="$2"
REGIONS=$(aws ec2 describe-regions --query "Regions[].RegionName" --output text)
for region in $REGIONS; do
  supported_count=$(aws rds describe-orderable-db-instance-options \
    --region "$region" \
    --engine "$ENGINE" \
    --db-instance-class "$INSTANCE_CLASS" \
    --query 'length(OrderableDBInstanceOptions)' \
    --output text 2>/dev/null || echo "0")
  if [ "$supported_count" -gt 0 ]; then
    echo "$region supports $INSTANCE_CLASS for $ENGINE."
  else
    echo "$region doesn't support $INSTANCE_CLASS for $ENGINE."
  fi
done
```

以下示例输出使用 db.r8g.large 实例类检查了 RDS for MySQL 的区域支持。

```
./check_region_support.sh mysql db.r8g.large
ap-south-1 doesn't support db.r8g.large for mysql.
eu-north-1 doesn't support db.r8g.large for mysql.
eu-west-3 doesn't support db.r8g.large for mysql.
eu-west-2 doesn't support db.r8g.large for mysql.
eu-west-1 doesn't support db.r8g.large for mysql.
ap-northeast-3 doesn't support db.r8g.large for mysql.
ap-northeast-2 doesn't support db.r8g.large for mysql.
ap-northeast-1 doesn't support db.r8g.large for mysql.
ca-central-1 doesn't support db.r8g.large for mysql.
sa-east-1 doesn't support db.r8g.large for mysql.
ap-southeast-1 doesn't support db.r8g.large for mysql.
ap-southeast-2 doesn't support db.r8g.large for mysql.
eu-central-1 supports db.r8g.large for mysql.
us-east-1 supports db.r8g.large for mysql.
us-east-2 supports db.r8g.large for mysql.
us-west-1 doesn't support db.r8g.large for mysql.
us-west-2 supports db.r8g.large for mysql.
```