

# 更改 Athena 引擎版本
<a name="engine-versions-changing"></a>

Athena 偶尔会发布新的引擎版本，以提供更好的性能、功能并修复代码。当新的引擎版本可用时，Athena 会在控制台中通知您。您可以选择让 Athena 决定何时升级，也可以手动指定每个工作组的 Athena 引擎版本。

## 查找工作组的引擎版本
<a name="engine-versions-changing-finding-the-query-engine-version-for-a-workgroup"></a>

您可以使用 **Workgroups**（工作组）页面查找任何工作组的当前引擎版本。

**要查找任何工作组的当前引擎版本**

1. 从 [https://console.aws.amazon.com/athena/](https://console.aws.amazon.com/athena/home) 打开 Athena 控制台。

1. 如果控制台导航窗格不可见，请选择左侧的扩展菜单。  
![\[选择扩展菜单。\]](http://docs.aws.amazon.com/zh_cn/athena/latest/ug/images/nav-pane-expansion.png)

1. 在 Athena 控制台导航窗格中，选择 **Workgroups**（工作组）。

1. 在 **Workgroups**（工作组）页面上，找到所需的工作组。该工作组的 **Query engine version**（查询引擎版本）列显示查询引擎版本。

## 使用 Athena 控制台更改引擎版本
<a name="engine-versions-changing-changing-the-engine-version"></a>

当新引擎版本可用时，您便可以选择让 Athena 决定何时升级工作组，或手动指定工作组使用的 Athena 引擎版本。如果当前只有一个版本可用，则无法手动指定其他版本。

**注意**  
要更改工作组的引擎版本，您必须有权限对工作组执行 `athena:ListEngineVersions` 操作。有关 IAM policy 示例，请参阅 [工作组策略示例](example-policies-workgroup.md)。

**要让 Athena 决定何时升级工作组**

1. 从 [https://console.aws.amazon.com/athena/](https://console.aws.amazon.com/athena/home) 打开 Athena 控制台。

1. 如果控制台导航窗格不可见，请选择左侧的扩展菜单。

1. 在控制台导航窗格中，选择 **Workgroups**（工作组）。

1. 在工作组列表中，选择要配置的工作组链接。

1. 选择**编辑**。

1. 在 **Query engine version**（查询引擎版本）部分中，对于 **Update query engine**（更新查询引擎），选择 **Automatic**（自动），让 Athena 选择何时升级您的工作组。这是默认设置。

1. 选择**保存更改**。

   在工作组列表中，工作组的 **Query engine update status**（查询引擎更新状态）显示 **Automatic**（自动）。

**要手动选择引擎版本**

1. 从 [https://console.aws.amazon.com/athena/](https://console.aws.amazon.com/athena/home) 打开 Athena 控制台。

1. 如果控制台导航窗格不可见，请选择左侧的扩展菜单。

1. 在控制台导航窗格中，选择 **Workgroups**（工作组）。

1. 在工作组列表中，选择要配置的工作组链接。

1. 选择**编辑**。

1. 在 **Query engine version**（查询引擎版本）部分中，对于 **Update query engine**（更新查询引擎），选择 **Manual**（手动）以手动选择引擎版本。

1. 使用 **Query engine version**（查询引擎版本）选项，选择希望工作组使用的引擎版本。如果没有其他引擎版本可用，则无法指定其他引擎版本。

1. 选择**保存更改**。

   在工作组列表中，工作组的 **Query engine update status**（查询引擎更新状态）显示 **Manual**（手动）。

## 使用 AWS CLI 更改引擎版本
<a name="engine-versions-changing-changing-the-engine-version-cli"></a>

要通过 AWS CLI 更改引擎版本，请使用以下示例中的语法。

```
aws athena update-work-group --work-group workgroup-name --configuration-updates EngineVersion={SelectedEngineVersion='Athena engine version 3'}
```

## 在创建工作组时指定引擎版本
<a name="engine-versions-changing-specifying-the-engine-version-when-you-create-a-workgroup"></a>

创建工作组时，可以指定工作组使用的引擎版本，或者让 Athena 决定何时升级工作组。如果有新的引擎版本可用，最佳实践是在升级其他工作组之前创建一个工作组以测试新引擎。要指定工作组的引擎版本，您必须具有工作组的 `athena:ListEngineVersions` 权限。有关 IAM policy 示例，请参阅 [工作组策略示例](example-policies-workgroup.md)。

**要在创建工作组时指定引擎版本**

1. 从 [https://console.aws.amazon.com/athena/](https://console.aws.amazon.com/athena/home) 打开 Athena 控制台。

1. 如果控制台导航窗格不可见，请选择左侧的扩展菜单。

1. 在控制台导航窗格中，选择 **Workgroups**（工作组）。

1. 在 **Workgroups**（工作组）页面中，选择 **Create workgroup**（创建工作组）。

1. 在 **Create workgroup**（创建工作组）页面上的 **Query engine version**（查询引擎版本）部分中，请执行以下操作之一：
   + 选择 **Automatic**（自动），让 Athena 选择何时升级您的工作组。这是默认设置。
   + 选择 **Manual**（手动）以手动选择其他引擎版本（如果可用）。

1. 根据需要输入其他字段的信息。有关其他字段的信息，请参阅 [创建工作组](creating-workgroups.md)。

1. 选择 **Create workgroup (创建工作组)**。

## 在引擎版本升级之前测试查询
<a name="engine-versions-testing"></a>

当工作组升级到新的引擎版本时，您的某些查询可能会因不兼容而中断。为了确保引擎版本升级顺利进行，您可以提前测试查询。

**要在引擎版本升级之前测试查询**

1. 验证您使用的工作组的引擎版本。您正在使用的引擎版本会显示在 **Workgroups**（工作组）页面上工作组的 **Query engine version**（查询引擎版本）列中。有关更多信息，请参阅 [查找工作组的引擎版本](#engine-versions-changing-finding-the-query-engine-version-for-a-workgroup)。

1. 创建使用新引擎版本的测试工作组。有关更多信息，请参阅 [在创建工作组时指定引擎版本](#engine-versions-changing-specifying-the-engine-version-when-you-create-a-workgroup)。

1. 使用新工作组运行要测试的查询。

1. 如果查询失败，请检查新引擎中可能影响查询的重大更改。某些更改可能需要您更新查询的语法。

1. 如果您的查询仍然失败，请联系 AWS 支持 以获取帮助。在 AWS 管理控制台 中，选择 **Support**（支持）、**Support Center**（支持中心），或使用 **Amazon Athena** 标签在 [AWS re:Post](https://repost.aws/tags/TA78iVOM7gR62_QqDe2-CmiA/amazon-athena) 上提问。

## 对在引擎版本升级后失败的查询进行故障排除
<a name="engine-versions-troubleshooting"></a>

如果引擎版本升级后查询失败，请检查是否有重大更改，包括可能影响查询语法的更改。

如果您的查询仍然失败，请联系 AWS 支持 以获取帮助。在 AWS 管理控制台 中，选择 **Support**（支持）、**Support Center**（支持中心），或使用 **Amazon Athena** 标签在 [AWS re:Post](https://repost.aws/tags/TA78iVOM7gR62_QqDe2-CmiA/amazon-athena) 上提问。