Postgresql
如何查詢 Amazon RDS 實例配置?
從在 Amazon RDS Postgres 實例上執行的 plpgsql 腳本中,是否可以獲取有關實例配置的資訊?如何檢索實例的數據庫實例 ID、ARN(Amazon 資源名稱)或終端節點?
我想將它用作一些 plpgsql-script 中的檢查,以 100% 確保它不會在生產數據庫上執行它的操作。
與EC2 實例和 ECS 任務(基於 EC2 /基於Fargate)不同,沒有您可以查詢的元數據服務來為您提供這些詳細資訊。您將能夠獲得的最好結果是來自可能提供主機名的系統級視圖。但是,我會謹慎依賴這些資訊,因為在完全託管的環境中,故障轉移和實例替換在 99% 的情況下會自動發生,因此您查詢的值下次可能會有所不同,並且可能有也可能沒有標準命名法.
獲取該資訊的唯一方法是呼叫您正在查找的集群和/或實例的 RDS API 端點。
如果您通過將連接到實例的外部程序執行 sql,則可以將這些檢查作為連接和執行腳本的先決條件。但是,如果您通過直接連接到實例來手動執行腳本並希望阻止“oops”操作,則將由執行該操作的人來檢查他們的工作。