PostgreSQL init process complete; ready for start up.
2022-05-16 19:28:51.674 UTC [1] LOG: starting PostgreSQL 14.2 on x86_64-pc-linux-musl, compiled by gcc (Alpine 10.3.1_git20211027) 10.3.1 20211027, 64-bit
2022-05-16 19:28:51.674 UTC [1] LOG: listening on IPv4 address "0.0.0.0", port 5432
2022-05-16 19:28:51.674 UTC [1] LOG: listening on IPv6 address "::", port 5432
2022-05-16 19:28:51.677 UTC [1] LOG: listening on Unix socket "/var/run/postgresql/.s.PGSQL.5432"
2022-05-16 19:28:51.681 UTC [51] LOG: database system was shut down at 2022-05-16 19:28:51 UTC
2022-05-16 19:28:51.684 UTC [1] LOG: database system is ready to accept connections
2022-05-16 19:29:07.610 UTC [59] LOG: invalid length of startup packet
2022-05-16 19:29:07.611 UTC [58] LOG: invalid length of startup packet
2022-05-16 19:29:07.612 UTC [60] LOG: invalid length of startup packet
2022-05-16 19:29:08.647 UTC [62] LOG: invalid length of startup packet
2022-05-16 19:29:08.650 UTC [61] LOG: invalid length of startup packet
2022-05-16 19:29:08.652 UTC [63] LOG: invalid length of startup packet
我实在想不明白
Docker编写器文件
版本:"3.9">
服务:postgres:图片:postgres: 14-alpine港口:——5432:5432卷:- ~/应用程序/postgres:/var/lib/postgresql/数据环境:- POSTGRES_PASSWORD = S3cret- POSTGRES_USER = citizix_user- POSTGRES_DB = citizix_db
使用ubuntu 20.4
某个东西,可能是一个监控系统,正在与数据库服务器建立TCP连接,然后在没有发送正确的PostgreSQL连接数据包的情况下关闭它们。
您可以在您的log_line_prefix
中包含%h
,以查看这些连接的客户端地址,这可能有助于识别罪魁祸首。
解决方案是让监控系统建立数据库连接,而不仅仅是TCP连接。这样不仅可以去掉消息,而且可以使测试更有用。
尝试以下修复:
- 更新docker并重启它
- 减少提供给/docker-entrypoint-initdb的sql文件的名称长度。d以卷为单位