如何變更 Amazon Aurora 資料庫叢集的時區?

1 分的閱讀內容
0

我有一個 Amazon Aurora 資料庫叢集,我想要變更時區。我該如何操作?

簡短描述

在 Amazon Aurora 中,time_zone 參數是叢集層級參數。參數群組為叢集提供預設時區。這是所有資料庫的預設值。time_zone 的預設值為 UTC,在變更 time_zone 的值後,您的變更將套用至該叢集中的所有節點。

**注意:**default_time_zone 參數指的是伺服器時區。您無法修改此參數。

**重要事項:**資料庫叢集參數群組和資料庫執行個體參數群組之間存在差異。

  • 資料庫參數群組充當套用至一個或多個資料庫執行個體的引擎組態值的容器。資料庫參數群組適用於 Amazon Relational Database Service (Amazon RDS) 和 Amazon Aurora 中的資料庫執行個體。這些組態設定適用於 Aurora 資料庫叢集中的資料庫執行個體之間可能會有不同的屬性,例如記憶體緩衝區的大小。
  • 資料庫叢集參數群組充當引擎組態值的容器,這些值會套用至 Aurora 資料庫叢集中的每個資料庫執行個體。例如,Aurora 共享儲存模型要求 Aurora 叢集中的每個資料庫執行個體對參數 (例如 **innodb_file_per_table) 使用相同的設定。**因此,會影響實體儲存配置的參數屬於資料庫叢集參數群組。資料庫叢集參數群組還包含所有資料庫執行個體層級參數的預設值。

解決方法

此範例使用 Amazon Aurora MySQL- 5.7 相容版本將 time_zone 參數變更為 ASIA/CALCUTTA

  1. 建立自訂資料庫叢集參數群組。如需詳細資訊,請參閱使用參數群組

  2. 修改動態參數 time_zone="ASIA/CALCUTTA"

  3. 將您建立的新資料庫叢集參數群組附加至叢集,然後手動重新啟動資料庫叢集以套用變更。

  4. 透過執行 select @@time_zone 命令檢查資料庫執行個體的時間戳記:

mysql> select @@time_zone;
+---------------+
| @@time_zone   |
+---------------+
| Asia/Calcutta |
+---------------+
1 row in set (0.00 sec)

**注意:**當您在工作階段層級設定時區時,這將會覆寫資料庫和參數時區。但是,僅對該工作階段保留此設定。當您執行 SET time_zone = 'Europe/Helsinki'; 命令時,這會將所有資料庫的時區設定為 Europe/Helsinki。新時區優先於參數群組時區。在資料庫層級設定的時區會覆寫參數群組時區。工作階段時區會覆寫參數群組時區和在資料庫層級設定的時區。


AWS 官方
AWS 官方已更新 2 年前