Postgresql

配置 Wal log shipping hot standby 後 PostgreSQL CPU 100%

  • August 19, 2020

我已經為一個節點配置了 Hight Avaliabiliy WAL Log Shipping Hot Standby (SSL)。但是在我配置之後,兩個主機(主要和次要)都佔用了 100% 的 CPU 使用率。

最奇怪的是因為我只有一個名為“TESTE”的數據庫和一個名為“EXAMPLE”的表來檢查複製是否正常。複製工作完美,但我不明白為什麼我的 CPU 佔用 100% 的使用率,因為我的集群上沒有任何應用程序連接。

我執行 HTOP 命令並得到以下結果:

圖 1 - 主伺服器 HTOP 資訊

圖 1 - 主伺服器 HTOP 資訊

圖 2 - 輔助伺服器 HTOP 資訊

圖 2 - 輔助伺服器 HTOP 資訊

SO版本:

No LSB modules are available.
Distributor ID: Debian
Description:    Debian GNU/Linux 10 (buster)
Release:        10
Codename:       buster

PostgreSQL 版本:

postgres (PostgreSQL) 12.3 (Debian 12.3-1.pgdg100+1)

主伺服器 postgres.conf 文件:

max_connections = 100
SSL = on
shared_buffers = 2GB
work_mem = 10485kb
maintenance_work_mem = 512MB
dynamic_shared_memory_type = posix
effective_io_concurrency = 200
max_worker_processes = 4
max_parallel_maintenance_workers = 2
max_parallel_workers_per_gather = 2
max_parallel_workers = 4
wal_level = replica
wal_buffers = 16MB
max_wal_size = 200MB
min_wal_size = 80MB
checkpoint_completion_target = 0.7
archive_mode = on
max_wal_senders = 3
wal_keep_segments = 8
hot_standby = on
hot_standby_feedback = on
random_page_cost = 1.1
effective_cache_size = 6GB
default_statistics_target = 100

pg_stat_activity 資訊:

在此處輸入圖像描述

pg_stat_archiver 資訊:

在此處輸入圖像描述

pg_stat_replication 資訊: 在此處輸入圖像描述

如果我在兩台伺服器中停止 postgres 服務,CPU 仍然有 100% 的使用率。

任何人都可以幫助我嗎?

通過將具有弱超級使用者密碼的數據庫暴露在網際網路上,您邀請某人闖入並為自己的目的使用您的 CPU,可能是探勘加密貨幣

從網際網路上獲取機器,將其擦拭乾淨並重新安裝作業系統。如果是託管數據庫,請停用數據庫並獲取一個新數據庫。

為了保護自己免受此問題的影響,請選擇好的密碼。

引用自:https://dba.stackexchange.com/questions/273999