[英]Streaming replication solution in Postgres
我正在閱讀下面的文章,了解如何在Postgres DB中實現流復制。
https://www.percona.com/blog/2018/09/07/setting-up-streaming-replication-postgresql
有些事情不太清楚
1)兩個數據庫實例都處於活動狀態還是從屬實例只是主副本(它與主副本通信,而不與后端通信?
2)如果數據庫主節點發生故障,在第二個節點恢復聯機之前會發生什么? 默認情況下是否僅通過wal sender
和wal receiver
進程來覆蓋?還是需要添加其他內容?
3)例如,如果我有兩個后端節點(它們都處於活動狀態),則應在后端應用程序中配置哪個DB_HOST:PORT?
如果postgresql.conf
hot_standby = on
,則客戶端可以連接到備用數據庫,但只能讀取數據而不能修改它們。 備用數據庫與主數據庫完全相同,就像您逐個文件復制它一樣。
如果主服務器發生故障,備用仍將正常運行,但你仍然直到有人促進待機只能讀取數據。 您必須了解PostgreSQL 並未附帶允許它自動發生的集群軟件。 為此,您必須使用其他軟件如Patroni。
這取決於您的軟件使用的API。 使用libpq(C API)或JDBC,您可以擁有一個包含兩個服務器的連接字符串,並且將自動選擇主服務器,但是對於其他客戶端,您可能必須使用外部負載平衡軟件。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.