

# 升级 MySQL 数据库快照引擎版本
<a name="mysql-upgrade-snapshot"></a>

借助 Amazon RDS，您可以为 MySQL 数据库实例创建存储卷数据库快照。创建数据库快照时，快照基于数据库实例使用的引擎版本。您可以升级数据库快照的引擎版本。

对于 RDS for MySQL，可以将版本 5.7 快照升级到版本 8.0，或将版本 8.0 快照升级到版本 8.4。您可以升级加密或未加密的数据库快照。

要查看 RDS for MySQL 数据库快照的可用引擎版本，请使用以下 Amazon CLI 示例。

```
aws rds describe-db-engine-versions --engine mysql --include-all --engine-version example-engine-version --query "DBEngineVersions[*].ValidUpgradeTarget[*].{EngineVersion:EngineVersion}" --output text
```

如果您看不到快照的结果，表明您的引擎版本可能已被弃用。如果您的引擎版本被弃用，我们建议您升级到最新的主要版本升级目标或该版本的其它可用升级目标之一。有关更多信息，请参阅 [使用 RDS for MySQL 不支持的引擎版本的数据库快照的升级选项](mysql-upgrade-snapshot.upgrade-options.md)。

将升级到新引擎版本的数据库快照还原后，请确保测试升级是否成功。有关主要版本升级的更多信息，请参阅[升级 RDS for MySQL 数据库引擎](USER_UpgradeDBInstance.MySQL.md)。要了解如何还原数据库快照，请参阅 [还原到数据库实例](USER_RestoreFromSnapshot.md)。

**注意**  
您无法升级在自动备份过程中创建的自动数据库快照。

您可以使用 Amazon Web Services 管理控制台、Amazon CLI 或 RDS API 升级数据库快照。

------
#### [ Console ]

要使用 Amazon Web Services 管理控制台升级数据库快照引擎版本，请使用以下过程。

**升级数据库快照**

1. 登录Amazon Web Services 管理控制台并通过以下网址打开 Amazon RDS 控制台：[https://console.aws.amazon.com/rds/](https://console.amazonaws.cn/rds/)。

1. 在导航窗格中，选择**快照**。

1. 选择要升级的快照。

1. 对于 **Actions (操作)**，选择 **Upgrade snapshot (升级快照)**。此时会显示 **Upgrade snapshot (升级快照)** 页面。

1. 选择要升级到的 **New engine version (新引擎版本)**。

1. 选择 **Save changes (保存更改)** 以升级快照。

   在升级过程中，将为此数据库快照禁用所有快照操作。此外，数据库快照状态由**可用**变为**正在升级**，完成后变为**活动**。如果由于快照损坏问题导致无法升级数据库快照，状态将变为**不可用**。此状态的快照无法恢复。
**注意**  
如果数据库快照升级失败，则快照将回滚到具有原始版本的原始状态。

------
#### [ Amazon CLI ]

要将数据库快照升级到新的数据库引擎版本，请运行 Amazon CLI [modify-db-snapshot](https://docs.amazonaws.cn/cli/latest/reference/rds/modify-db-snapshot.html) 命令。

**选项**
+ `--db-snapshot-identifier` – 要升级的数据库快照的标识符。标识符必须是唯一的 Amazon 资源名称 (ARN)。有关更多信息，请参阅“[Amazon RDS 中的 Amazon 资源名称（ARN）](USER_Tagging.ARN.md)”。
+ `--engine-version` – 升级后的数据库快照的引擎版本。

**Example**  
对于 Linux、macOS 或 Unix：  

```
1. aws rds modify-db-snapshot \
2. 
3.     --db-snapshot-identifier my_db_snapshot \
4.     --engine-version new_version
```
对于：Windows  

```
1. aws rds modify-db-snapshot ^
2.     --db-snapshot-identifier my_db_snapshot ^
3.     --engine-version new_version
```

------
#### [ Amazon RDS API ]

要将数据库快照升级到新的数据库引擎版本，请调用 RDS API [ModifyDBSnapshot](https://docs.amazonaws.cn/AmazonRDS/latest/APIReference/API_ModifyDBSnapshot.html) 操作。

**参数**
+ `DBSnapshotIdentifier` – 要升级的数据库快照的标识符。标识符必须是唯一的 Amazon 资源名称 (ARN)。有关更多信息，请参阅“[Amazon RDS 中的 Amazon 资源名称（ARN）](USER_Tagging.ARN.md)”。
+ `EngineVersion` – 升级后的数据库快照的引擎版本。

------