我已经为一个节点配置了 Hight Avaliabiliy WAL Log Shipping Hot Standby (SSL)。但是在我配置之后,两个主机(主要和次要)都占用了 100% 的 CPU 使用率。
最奇怪的是因为我只有一个名为“TESTE”的数据库和一个名为“EXAMPLE”的表来检查复制是否正常。复制工作完美,但我不明白为什么我的 CPU 占用 100% 的使用率,因为我的集群上没有任何应用程序连接。
我运行 HTOP 命令并得到以下结果:
图 1 - 主服务器 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 信息:
如果我在两台服务器中停止 postgres 服务,CPU 仍然有 100% 的使用率。
任何人都可以帮助我吗?
通过将具有弱超级用户密码的数据库暴露在互联网上,您邀请某人闯入并为自己的目的使用您的 CPU,可能是挖掘加密货币。
从互联网上获取机器,将其擦拭干净并重新安装操作系统。如果是托管数据库,请停用数据库并获取一个新数据库。
为了保护自己免受此问题的影响,请选择好的密码。