

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

# 使用參數更新最佳化Lightsail資料庫效能
<a name="amazon-lightsail-updating-database-parameters"></a>

資料庫參數又稱為資料庫系統變數，可用來定義 Amazon Lightsail 中受管資料庫的基本屬性。例如，您可以定義一個資料庫參數來限制資料庫連線數量，或定義另一個參數來限制資料庫緩衝集區大小。本指南說明如何取得受管資料庫的參數清單，以及如何使用 AWS Command Line Interface () 更新這些參數AWS CLI。

**注意**  
如需 MySQL 系統變數的詳細資訊，請參閱 [MySQL 5.6](https://dev.mysql.com/doc/refman/5.6/en/server-system-variables.html)、[MySQL 5.7](https://dev.mysql.com/doc/refman/5.7/en/server-system-variables.html) 或 [MySQL 8.0](https://dev.mysql.com/doc/refman/8.0/en/server-system-variables.html) 文件。如需 PostgreSQL 系統變數的詳細資訊，請參閱 [PostgreSQL 9.6](https://www.postgresql.org/docs/9.6/index.html)、[PostgreSQL 10](https://www.postgresql.org/docs/10/index.html)、[PostgreSQL 11](https://www.postgresql.org/docs/11/index.html) 或 [PostgreSQL 12](https://www.postgresql.org/docs/12/index.html) 的文件。

## 先決條件
<a name="prerequisites-to-update-database-parameters"></a>
+ 如果您尚未安裝和設定 AWS CLI，請先執行這項動作。如需詳細資訊，請參閱[設定 AWS CLI 以使用 Lightsail](lightsail-how-to-set-up-and-configure-aws-cli.md)。

## 取得可用資料庫參數的清單
<a name="get-database-parameters"></a>

資料庫參數依據資料庫引擎而有不同；因此，您應取得可用於您的受管資料庫的參數清單。這可讓您決定您要修改哪些參數，以及參數生效的方式。

**若要取得可用資料庫參數的清單**

1. 開啟終端機或命令提示視窗。

1. 輸入下列命令，取得您資料庫的參數清單。

   ```
   aws lightsail get-relational-database-parameters --relational-database-name {{DatabaseName}}
   ```

   在命令中，將 {{DatabaseName}} 取代為您的資料庫名稱。

   您應該會看到類似以下範例的結果：  
![取得關聯式資料庫參數結果](http://docs.aws.amazon.com/zh_tw/lightsail/latest/userguide/images/amazon-lightsail-get-database-parameters-result.png)
**注意**  
如果參數結果分成多個頁面，將會列出下一個頁面的符記 ID。請記下下一個頁面符記 ID，然後如下一個步驟所示，用它來檢視下一頁的參數結果。

1. 如果您的結果分成多個頁面，請使用下列命令來檢視額外的一組參數。否則，跳至下一步。

   ```
   aws lightsail get-relational-database-parameters --relational-database-name {{DatabaseName}} --page-token {{NextPageTokenID}}
   ```

   在命令中：
   + 將 {{DatabaseName}} 取代為您的資料庫名稱。
   + 將 {{NextPageTokenID}} 取代為下一頁字符 ID。

   結果將顯示各資料庫參數的下列資訊：
   + **允許的值** - 指定參數值的有效範圍。
   + **套用方法** - 指定何時可套用參數變更。允許的選項為 `immediate` 或 `pending-reboot`。請參閱以下套用類型，以了解如何定義套用方法的詳細資訊。
   + **套用類型** - 指定引擎特定的提交類型。如果列出的是 `dynamic`，表示該參數可透過 `immediate` 套用方法加以套用，資料庫將會立即開始使用新的參數值。如果列出的是 `static`，表示該參數只能透過 `pending-reboot` 套用方法加以套用，資料庫只有在重新啟動之後才會開始使用新的參數值。
   + **資料類型** - 指定參數的有效資料類型。
   + 在**說明** - 提供參數的說明。
   + **可修改** - 此布林值用於指示是否可修改參數。如果列出的是 `true`，表示可修改參數。
   + **參數名稱** - 指定參數的名稱。使用此值搭配 `update relational database` 操作和 `parameter name` 參數。

1. 尋找您要變更的參數，然後記下參數名稱、允許值，以及套用方法。我們建議將參數名稱複製到您的剪貼簿，以避免輸入錯誤的參數名稱。若要這麼做，如果您使用的是 Windows，請反白選取參數名稱並按 **Ctrl\+C (Ctrl\+C)**，或者如果您使用的是 macOS，請反白選取參數名稱並按 **Cmd\+C (Cmd\+C)**，將參數名稱複製到您的剪貼簿。然後，在適當位置按下 **Ctrl\+V (Ctrl\+V)** 或 **Cmd\+V (Cmd\+V)** 來貼上。

   在您識別想要修改的參數的名稱之後，請繼續本指南的下一個部分，將參數變更為您想要的值。

## 更新資料庫參數
<a name="update-database-parameters"></a>

取得您要變更的參數名稱之後，請執行以下步驟來修改您在 Lightsail 中的受管資料庫參數：

**若要更新資料庫參數**
+ 將下列命令輸入至終端機或命令提示字元視窗，以更新您的受管資料庫的參數。

  ```
  aws lightsail update-relational-database-parameters --relational-database-name {{DatabaseName}} --parameters "parameterName={{ParameterName}},parameterValue={{NewParameterValue}},applyMethod={{ApplyMethod}}"
  ```

  在命令中：
  + 將 {{DatabaseName}} 取代為您的資料庫名稱。
  + 將 {{ParameterName}} 取代為您要修改的參數名稱。
  + 將 {{NewParameterValue}} 取代為參數的新值。
  + 將 {{ApplyMethod}} 取代為參數的套用方法。

    如果參數的套用類型是 `dynamic`，表示該參數可透過 `immediate` 套用方法加以套用，資料庫將會立即開始使用新的參數值。但是，如果參數套用類型是 `static`，表示該參數只能透過 `pending-reboot` 套用方法加以套用，資料庫只有在重新啟動之後才會開始使用新的參數值。

  您應該會看到類似以下範例的結果：  
![變更關聯式資料庫參數結果](http://docs.aws.amazon.com/zh_tw/lightsail/latest/userguide/images/amazon-lightsail-update-database-parameters-result.png)

  資料庫參數會依據所使用的套用方式進行更新。