Failed to start PostgreSQL 11 database server的解决办法

男娘i 2022-03-19 16:18 974阅读 1赞

文章目录

  • 错误
    • 连接拒绝Connection refused
    • 启动失败
  • 解决办法
  • 小结

错误

在使用 PostgreSQL 过程中,我目前遇到了 2 种错误的类型,下面是具体解决办法和具体的错误信息。

连接拒绝Connection refused

在使用 Django 应用中,使用 PostgreSQL 关系数据库,在安装的时候遇到一些问题,具体如下:

  1. Is the server running on host "host_name" (XX.XX.XX.XX)
  2. and accepting TCP/IP connections on port 5432?

上面这个问题是没有启动数据库导致的。

启动失败

下面这个问题启动失败的问题,启动命令是

  1. [root@VM_152_4_centos bootcamp]# service postgresql-11 start
  2. Redirecting to /bin/systemctl start postgresql-11.service
  3. Job for postgresql-11.service failed because the control process exited with error code. See "systemctl status postgresql-11.service" and "journalctl -xe" for details.

提示了运行status 和 journalctl -xe 可以查看到具体细节。

  1. [root@VM_152_4_centos bootcamp]# systemctl status postgresql-11.service
  2. postgresql-11.service - PostgreSQL 11 database server
  3. Loaded: loaded (/usr/lib/systemd/system/postgresql-11.service; disabled; vendor preset: disabled)
  4. Active: failed (Result: exit-code) since Sun 2019-02-17 22:15:42 CST; 19min ago
  5. Docs: https://www.postgresql.org/docs/11/static/
  6. Process: 6220 ExecStartPre=/usr/pgsql-11/bin/postgresql-11-check-db-dir ${PGDATA} (code=exited, status=1/FAILURE)
  7. Feb 17 22:15:42 VM_152_4_centos systemd[1]: Starting PostgreSQL 11 database server...
  8. Feb 17 22:15:42 VM_152_4_centos systemd[1]: postgresql-11.service: control process exited, code=exited status=1
  9. Feb 17 22:15:42 VM_152_4_centos systemd[1]: Failed to start PostgreSQL 11 database server.
  10. Feb 17 22:15:42 VM_152_4_centos systemd[1]: Unit postgresql-11.service entered failed state.
  11. Feb 17 22:15:42 VM_152_4_centos systemd[1]: postgresql-11.service failed.

然后再执行journalctl -xe命令。

  1. [root@VM_152_4_centos bootcamp]# journalctl -xe
  2. -- Unit postgresql-11.service has begun starting up.
  3. Feb 17 22:35:03 VM_152_4_centos postgresql-11-check-db-dir[7789]: "/var/lib/pgsql/11/data/" is missing or empty.

解决办法

可以看到根本原因就是没有db,所以需要先初始化db。

  1. [root@VM_152_4_centos ~]# /usr/pgsql-11/bin/postgresql-11-setup initdb
  2. Initializing database ... OK

最后启动,然后查看状态

  1. [root@VM_152_4_centos bootcamp]# systemctl start postgresql-11.service
  2. [root@VM_152_4_centos bootcamp]# systemctl status postgresql-11.service
  3. postgresql-11.service - PostgreSQL 11 database server
  4. Loaded: loaded (/usr/lib/systemd/system/postgresql-11.service; disabled; vendor preset: disabled)
  5. Active: active (running) since Sun 2019-02-17 22:37:04 CST; 2s ago

小结

遇到问题不要慌,仔细查看输出的错误信息里面,有没有需要的帮助谢谢,还有一个就是通过网上查找错误信息中的关键字,找到对应的解决方法。

发表评论

表情:
评论列表 (有 0 条评论,974人围观)

还没有评论,来说两句吧...

相关阅读