

# Amazon RDS API 参考
<a name="ProgrammingGuide"></a>

除了 AWS 管理控制台 和 AWS Command Line Interface（AWS CLI）之外，Amazon RDS 还提供了一个 API。您可以使用 API 自动执行管理 Amazon RDS 中的数据库实例和其他对象的任务。
+ 有关 API 操作的字母顺序列表，请参阅[操作](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_Operations.html)。
+ 有关数据类型的字母顺序列表，请参阅[数据类型](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_Types.html)。
+ 有关常用查询参数的列表，请参阅[常用参数](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/CommonParameters.html)。
+ 有关错误代码的描述，请参阅[常见错误](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/CommonErrors.html)。

有关 AWS CLI 的更多信息，请参阅[适用于 Amazon RDS 的 AWS Command Line Interface 参考](https://docs.aws.amazon.com/cli/latest/reference/rds/index.html)。

**Topics**
+ [

# 使用查询 API
](Using_the_Query_API.md)
+ [

# 对 Amazon RDS 上的应用程序进行故障排除
](APITroubleshooting.md)

# 使用查询 API
<a name="Using_the_Query_API"></a>

以下各节简要讨论用于查询 API 的参数和请求身份验证。

有关查询 API 工作原理的一般信息，请参阅 *Amazon EC2 API Reference* 中的 [查询请求](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Query-Requests.html)。

## 查询参数
<a name="query-parameters"></a>

HTTP 基于查询的请求是指使用 HTTP 动作 GET 或 POST 的 HTTP 请求，查询参数的名称为 `Action`。

每个查询请求必须包括一些通用参数，以处理操作的身份验证和选择事宜。

有些操作会使用参数列表。这些列表都是使用 `param.n` 表示法指定的。*n* 值是从 1 开始的整数。

有关 Amazon RDS 区域和端点的信息，请转至《Amazon Web Services 一般参考》**的“区域和端点”部分中的 [Amazon Relational Database Service（RDS）](https://docs.aws.amazon.com/general/latest/gr/rande.html#rds_region)。

## 查询请求身份验证
<a name="query-authentication"></a>

您只能通过 HTTPS 发送查询请求，并且每个查询请求中必须包含签名。您必须使用 AWS 签名版本 4 或者签名版本 2。有关更多信息，请参阅[签名版本 4 签名流程](https://docs.aws.amazon.com/general/latest/gr/signature-version-4.html)和[签名版本 2 签名流程](https://docs.aws.amazon.com/general/latest/gr/signature-version-2.html)。

# 对 Amazon RDS 上的应用程序进行故障排除
<a name="APITroubleshooting"></a>

Amazon RDS 提供具体的描述性错误，以帮助您在与 Amazon RDS API 互动时排查问题。

**Topics**
+ [

## 检索错误
](#RetrievingErrors)
+ [

## 故障排除技巧
](#TroubleshootingTipss)

 有关对 Amazon RDS 数据库实例进行故障排除的信息，请参阅 [Amazon RDS 故障排除](CHAP_Troubleshooting.md)。

## 检索错误
<a name="RetrievingErrors"></a>

通常，在您花费任何时间处理错误结果之前，您都会希望您的应用程序检查某个请求是否生成错误。查明是否出现错误的最简单方法是寻找 Amazon RDS API 中做出响应的 `Error` 节点。

XPath 语法提供了一种搜索 `Error` 节点存在的简单方法。它还提供了一种相对简单的方法来检索错误代码和消息。下面的代码片段采用 Perl 和 XML::XPath 模块来确定在请求期间是否出现错误。如果出现了错误，那么代码会刊载第一个错误代码和响应信息。

```
use XML::XPath; 
    my $xp = XML::XPath->new(xml =>$response); 
    if ( $xp->find("//Error") ) 
    {print "There was an error processing your request:\n", " Error code: ",
    $xp->findvalue("//Error[1]/Code"), "\n", " ",
    $xp->findvalue("//Error[1]/Message"), "\n\n"; }
```

## 故障排除技巧
<a name="TroubleshootingTipss"></a>

 我们建议采用下列流程来诊断和解决 Amazon RDS API 的问题：
+ 通过检查 [http://status.aws.amazon.com](https://status.aws.amazon.com/) 来验证 Amazon RDS 在您的目标 AWS 区域中正常运行。
+ 检查您的请求结构。

  每个 Amazon RDS 操作都在 *Amazon RDS API Reference* 中有一个参考页面。复查您正在使用的参数是否正确。要了解关于潜在错误内容的意见，请查看示例请求或用户场景，以查看这些示例是否执行类似操作。
+ 检查 AWS re:Post。

  Amazon RDS 有一个开发社区，您可以在其中搜索他人在开发过程中遇到的问题以及解决方案。如要查看主题，请转至 [AWS re:Post](https://repost.aws/)。