解决启动PostgreSQL 11数据库服务器失败的方法
发表时间: 2019-02-17 23:17
在使用 PostgreSQL 过程中,我目前遇到了 2 种错误的类型,下面是具体解决办法和具体的错误信息。
连接拒绝Connection refused
在使用 Django 应用中,使用 PostgreSQL 关系数据库,在安装的时候遇到一些问题,具体如下:
Is the server running on host "host_name" (XX.XX.XX.XX) and accepting TCP/IP connections on port 5432?
上面这个问题是没有启动数据库导致的。
启动失败
下面这个问题启动失败的问题,启动命令是
[root@VM_152_4_centos bootcamp]# service postgresql-11 startRedirecting to /bin/systemctl start postgresql-11.serviceJob 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 可以查看到具体细节。
[root@VM_152_4_centos bootcamp]# systemctl status postgresql-11.service● postgresql-11.service - PostgreSQL 11 database server Loaded: loaded (/usr/lib/systemd/system/postgresql-11.service; disabled; vendor preset: disabled) Active: failed (Result: exit-code) since Sun 2019-02-17 22:15:42 CST; 19min ago Docs: https://www.postgresql.org/docs/11/static/ Process: 6220 ExecStartPre=/usr/pgsql-11/bin/postgresql-11-check-db-dir ${PGDATA} (code=exited, status=1/FAILURE)Feb 17 22:15:42 VM_152_4_centos systemd[1]: Starting PostgreSQL 11 database server...Feb 17 22:15:42 VM_152_4_centos systemd[1]: postgresql-11.service: control process exited, code=exited status=1Feb 17 22:15:42 VM_152_4_centos systemd[1]: Failed to start PostgreSQL 11 database server.Feb 17 22:15:42 VM_152_4_centos systemd[1]: Unit postgresql-11.service entered failed state.Feb 17 22:15:42 VM_152_4_centos systemd[1]: postgresql-11.service failed.
然后再执行journalctl -xe命令。
[root@VM_152_4_centos bootcamp]# journalctl -xe-- Unit postgresql-11.service has begun starting up.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。
[root@VM_152_4_centos ~]# /usr/pgsql-11/bin/postgresql-11-setup initdbInitializing database ... OK
最后启动,然后查看状态
[root@VM_152_4_centos bootcamp]# systemctl start postgresql-11.service[root@VM_152_4_centos bootcamp]# systemctl status postgresql-11.service● postgresql-11.service - PostgreSQL 11 database server Loaded: loaded (/usr/lib/systemd/system/postgresql-11.service; disabled; vendor preset: disabled) Active: active (running) since Sun 2019-02-17 22:37:04 CST; 2s ago
遇到问题不要慌,仔细查看输出的错误信息里面,有没有需要的帮助谢谢,还有一个就是通过网上查找错误信息中的关键字,找到对应的解决方法。