本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
將路由器新增至資料庫碎片群組
您可以將路由器新增至資料庫碎片群組。
先決條件
新增路由器有下列先決條件:
-
您必須擁有資料庫碎片群組。
-
使用者必須具有
rds_aurora_limitless_cluster_admin權限。rds_superuser具有此權限,因此主要使用者也具有此權限。rds_superuser可以將權限授予其他使用者:/* Logged in as the master user or a user with rds_superuser privileges */ CREATE USERusername; GRANT rds_aurora_limitless_cluster_admin tousername;注意
如果您在建立資料庫碎片群組後變更 AWS 帳戶 的預設 CA 憑證,新路由器將使用新的 CA 憑證 (此憑證與現有路由器的 CA 憑證不同)。根據信任存放區,某些連線可能會失敗。
-
若要啟用系統啟動的路由器新增,請在與資料庫叢集相關聯的自訂資料庫叢集參數群組中設定下列資料庫叢集參數:
參數 Value rds_aurora.limitless_enable_auto_scaleonrds_aurora.limitless_auto_scale_optionsadd_router或add_router,split_shard。如需更多詳細資訊,請參閱 Amazon Aurora 資料庫叢集的資料庫叢集參數群組。
新增路由器
若要新增路由器,請使用 rds_aurora.limitless_add_router 函數。此函數會啟動以非同步方式執行的路由器新增項目任務。
SELECT rds_aurora.limitless_add_router();
成功提交任務後,請等待任務 ID 傳回,例如:
job_id --------------- 1691300000000 (1 row)
注意
不支援並行路由器新增項目操作。在啟動另一個新增項目操作之前,依序執行操作並完成每個操作。
追蹤路由器新增項目
您可以使用任務 ID 來追蹤路由器新增項目任務。若要描述特定任務並取得更多相關詳細資訊,請執行下列查詢:
SELECT * FROM rds_aurora.limitless_list_router_scale_jobs(job_id);
例如:
SELECT * FROM rds_aurora.limitless_list_router_scale_jobs(1691300000000); job_id | action | job_details | status | submission_time | message ---------------+------------+--------------------------+---------+------------------------+------------------------------------------- 1691300000000 | ADD_ROUTER | Add 1 new Router by User | SUCCESS | 2023-08-06 05:33:20+00 | Scaling job succeeded. + | | | | | New router instance with ID 7 was created. (1 row)
當您傳遞不存在的任務作為輸入時,查詢會傳回錯誤。
SELECT * from rds_aurora.limitless_list_router_scale_jobs(1691300000001); ERROR: no job found with the job ID provided
您可以使用不含任務 ID 的相同查詢,來追蹤所有路由器新增項目任務的狀態,例如:
SELECT * FROM rds_aurora.limitless_list_router_scale_jobs(); job_id | action | job_details | status | submission_time | message ---------------+------------+--------------------------+-------------+------------------------+------------------------------------------- 1691200000000 | ADD_ROUTER | Add 1 new Router by User | IN_PROGRESS | 2023-08-05 01:46:40+00 | 1691300000000 | ADD_ROUTER | Add 1 new Router by User | SUCCESS | 2023-08-06 05:33:20+00 | Scaling job succeeded. + | | | | | New router instance with ID 7 was created. 1691400000000 | ADD_ROUTER | Add 1 new Router by User | FAILED | 2023-08-07 09:20:00+00 | Error occurred for the add router job 1691400000000. | | | | | Retry the command. If the issue persists, contact AWS Support. 1691500000000 | ADD_ROUTER | Add 1 new Router by User | CANCELED | 2023-08-07 09:20:00+00 | Scaling job was cancelled. (4 rows)
任務狀態可以是下列其中之一:
-
IN_PROGRESS:路由器新增項目任務已提交且正在進行中。您一次只能有一個進行中的任務。 -
CANCELLATION_IN_PROGRESS:使用者正在取消路由器新增項目任務。 -
CANCELED:使用者或系統已成功取消路由器新增項目任務。 -
SUCCESS:路由器新增項目任務已成功完成。message欄位包含新路由器的執行個體 ID。 -
FAILED:路由器新增項目任務失敗。message欄位包含失敗的詳細資訊,以及可作為失敗任務後續工作的任何動作。
注意
不需要完成路由器新增項目,因此沒有 PENDING 狀態。其不會造成停機時間。
取消路由器新增項目
您可以取消 IN_PROGRESS 的路由器新增項目。您需要任務 ID 才能將其取消。
SELECT * from rds_aurora.limitless_cancel_router_scale_jobs(job_id);
除非發生錯誤,否則不會傳回任何輸出。您可以使用任務追蹤查詢來追蹤取消。