

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# 升級Lightsail資料庫的主要版本
<a name="amazon-lightsail-upgrade-database-major-version"></a>

當 Amazon Lightsail支援新版本的資料庫引擎時，您可以將資料庫升級至新版本。 Lightsail提供兩種資料庫藍圖：MySQL 和 PostgreSQL。本指南說明如何升級 MySQL 或 PostgreSQL 資料庫執行個體的主要版本。您只能使用 [https://docs.aws.amazon.com/lightsail/2016-11-28/api-reference/API_UpdateRelationalDatabase.html](https://docs.aws.amazon.com/lightsail/2016-11-28/api-reference/API_UpdateRelationalDatabase.html) API 動作升級資料庫主要版本。

我們將使用 AWS CloudShell 來執行升級。CloudShell 是一種以瀏覽器為基礎的預先驗證 Shell，您可以直接從Lightsail主控台啟動。使用 CloudShell，您可以使用您偏好的 shell 執行 AWS Command Line Interface (AWS CLI) 命令，例如 Bash、PowerShell 或 Z shell。無需下載或安裝命令列工具即可執行此操作。如需如何設定和使用 CloudShell 的詳細資訊，請參閱 [AWS CloudShell 中的 Lightsail](amazon-lightsail-cloudshell.md)。

**了解變更**  
主要版本升級可能會帶來與舊版的許多不相容。這些不相容可能會在升級期間造成問題。您可能需要準備資料庫，才能成功升級。如需有關升級資料庫主要版本的資訊，請參閱 MySQL 和 PostgreSQL 網站上的下列主題。
+ [準備您的安裝以進行升級](https://dev.mysql.com/doc/refman/8.0/en/upgrade-prerequisites.html)
+ [MySQL 升級檢查程式公用程式](https://dev.mysql.com/doc/mysql-shell/8.0/en/mysql-shell-utilities-upgrade.html)
+ [升級 PostgreSQL 叢集](https://www.postgresql.org/docs/current/upgrading.html)

## 先決條件
<a name="upgrade-database-major-version-prerequisites"></a>

1. 確認您的應用程式支援資料庫的兩個主要版本。

1. 我們建議您先建立資料庫執行個體的快照，再進行任何變更。如需詳細資訊，請參閱[建立Lightsail資料庫快照](amazon-lightsail-creating-a-database-snapshot.md)。

1. （選用） 從您剛建立的快照建立新的資料庫執行個體。由於資料庫更新需要停機時間，因此您可以在升級目前作用中的資料庫之前，在新資料庫上測試升級。如需建立資料庫複本的詳細資訊，請參閱[建立Lightsail資料庫快照](amazon-lightsail-creating-a-database-snapshot.md)。

## 更新資料庫主要版本
<a name="upgrade-database-major-version-update-procedure"></a>

Lightsail 支援 MySQL 和 PostgreSQL 資料庫執行個體的主要版本升級。下列程序中會使用 MySQL 資料庫做為範例。不過，PostgreSQL 資料庫的程序和命令相同。

請完成下列程序，以升級資料庫的Lightsail資料庫主要版本。

1. 登入 [Lightsail 主控台](https://lightsail.aws.amazon.com/)。

1. 在左側的導覽窗格中，選擇**資料庫**。

1. 您要升級之 AWS 區域 資料庫執行個體的名稱和 的備註。  
![\[Lightsail 主控台中新資料庫執行個體的名稱和區域。\]](http://docs.aws.amazon.com/zh_tw/lightsail/latest/userguide/images/mysql80-upgrade-dbname-endpoint.png)

1. 在Lightsail主控台的左下角，選擇 **CloudShell**。CloudShell 終端機將在相同的瀏覽器索引標籤中開啟。出現命令提示時，表示 Shell 已準備好開始互動。

1. 在 CloudShell 提示字元中輸入下列命令，以取得可用的資料庫藍圖 IDs清單。

   ```
   aws lightsail get-relational-database-blueprints
   ```

1. 您要升級的主要版本的藍圖 ID 備註。例如 `mysql_8_0`。  
![\[CloudShell 視窗中 get-relational-database-blueprints 命令的回應。\]](http://docs.aws.amazon.com/zh_tw/lightsail/latest/userguide/images/mysql80-upgrade-get-blueprints.png)

1. 輸入下列命令來升級資料庫的主要版本。升級將在資料庫的下一個維護時段進行。在 命令中，將 *DatabaseName* 取代為您的資料庫名稱、將 *blueprintId* 取代為您升級的主要版本的藍圖 ID，並將 *DatabaseRegion* 取代 AWS 區域 為您的資料庫所在的 。

   ```
   aws lightsail update-relational-database \
    --relational-database-name DatabaseName \
    --relational-database-blueprint-id blueprintId \
    --region DatabaseRegion
   ```

   （選用） 若要立即套用升級，請在 命令中包含 `--apply-immediately` 參數。您會看到類似下列範例的回應，且在套用升級時，您的資料庫將無法使用。如需詳細資訊，請參閱《Lightsail API 參考》中的 [https://docs.aws.amazon.com/lightsail/2016-11-28/api-reference/API_UpdateRelationalDatabase.html](https://docs.aws.amazon.com/lightsail/2016-11-28/api-reference/API_UpdateRelationalDatabase.html)。  
![\[CloudShell 視窗中 update-relational-database --apply-immediately 命令的成功結果。\]](http://docs.aws.amazon.com/zh_tw/lightsail/latest/userguide/images/mysql80-upgrade-successful.png)

1. 輸入下列命令，以確認已為下一個資料庫維護時段排程主要版本升級。在 命令中，將 *DatabaseName* 取代為您的資料庫名稱，並將 *DatabaseRegion* 取代為您的 AWS 區域 資料庫所在的 。

   ```
   aws lightsail get-relational-database \
    --relational-database-name DatabaseName \
    --region DatabaseRegion
   ```

   在`get-relational-database`回應中，資料庫會在下一個維護時段[https://docs.aws.amazon.com/lightsail/2016-11-28/api-reference/API_UpdateRelationalDatabase.html#Lightsail-Type-RelationalDatabase-state](https://docs.aws.amazon.com/lightsail/2016-11-28/api-reference/API_UpdateRelationalDatabase.html#Lightsail-Type-RelationalDatabase-state)通知您待定的主要版本升級。您可以在回應的 [https://docs.aws.amazon.com/lightsail/2016-11-28/api-reference/API_UpdateRelationalDatabase.html#Lightsail-Type-RelationalDatabase-preferredMaintenanceWindow](https://docs.aws.amazon.com/lightsail/2016-11-28/api-reference/API_UpdateRelationalDatabase.html#Lightsail-Type-RelationalDatabase-preferredMaintenanceWindow)區段中找到下一個維護時段的日期和時間。

   **資料庫執行個體狀態**

   ```
   "state": "upgrading",
     "backupRetentionEnabled": true, 
     "pendingModifiedValues": {
     "engineVersion": "8.0.36"
   ```

   **Maintenance window (維護時段)**

   ```
   "preferredMaintenanceWindow": "wed: 09:22-wed: 09:52"
   ```

## 後續步驟
<a name="upgrade-database-major-version-next-steps"></a>

如果您建立了測試資料庫，您可以在驗證您的應用程式將與升級的資料庫搭配使用之後將其刪除。保留您先前建立的資料庫快照，以防您需要返回該資料庫。您也應該建立已升級資料庫的快照，以便擁有新的point-in-time副本。