今天在幫公司的工程單位協助解決問題時踩到 AWS RDS 的 Max connection 的問題,之前有寫過「AWS RDS 在各 instance type 的 max_connections 的定義」這篇,所以當下最快的解決方式直接加 Reader 解決 max connections 的上限,但有遇到小小的問題在這邊紀錄。
先說官方文件建立 Reader 的方式「Working with Read Replicas of MariaDB, MySQL, and PostgreSQL DB Instances」就是直接點 Cluster Database 的「Actions」→「Add reader」
抓幾個重點項目來稍微講一下
- Network & Security:該 instance 能被訪問的權限
- Encryption:是否加密,若開啟預設使用 KMS
- Instance specifications:instance type
- Settings:要 copy 的 reader instance 和 New reader instance name
- Failover:當 Failover 時 reader 變成 primary 的優先順序 (數字越小權重越大)
- Database options:一些 parameter 的設定
- Monitoring:是否使用「進階」監控,但要注意費用。
- Maintenance:是否自動升級 minor 版本。
踩坑
如果 Settings 的 Aurora replica source 選錯就會影響該 reader 的功能 …
例如選到 writer 的 DB identifier … 你的 reader 雖然會建立而且狀態為 Available,但無法正常使用 (Connection 不會進到選錯的 reader)