centos7 安装部署postgres数据库

一、下载安装包

yum install -y https://download.postgresql.org/pub/repos/yum/reporpms/EL-7-x86_64/pgdg-redhat-repo-latest.noarch.rpm
yum install -y postgresql12 postgresql12-server

二、初始化数据库

/usr/pgsql-12/bin/postgresql-12-setup initdb

三、启动pg数据库

systemctl start postgresql-12
systemctl enable postgresql-12
systemctl status postgresql-12

四、连接数据库

psql -U postgres

报错:psql: error: FATAL: Peer authentication failed for user “postgres“

报错原因:大概意思就是使用 peer 方式的认证方式, PostgresQL 会从操作系统内核中获取当前的用户名并且作为允许连接的用户名进行认证,这种方式仅仅适用于本地连接。由于我们这里的登录名并不是对应的用户名, 因此出现了以上认证失败的信息。

解决办法:先免密、创用户、改加密

(1)修改pg_hba.conf配置文件,实现免密登录,将peer改成trust

vim /var/lib/pgsql/12/data/pg_hba.conf

 (2)重启动服务,再次输入登录命令:

systemctl start postgresql-12
psql -U postgres

(3)创建postgres用户

ALTER USER postgres WITH PASSWORD 'postgres';

(4)退出当前数据库(\q 命令), 重新编辑 pg_hba.conf 文件,将trust改成md5

vim /var/lib/pgsql/12/data/pg_hba.conf

 (5)重新启动 PostgresQL 服务

systemctl start postgresql-12
systemctl statuspostgresql-12

五、开启数据库远程连接

(1)修改pg_hba.conf配置文件,放开远程地址

vim /var/lib/pgsql/12/data/pg_hba.conf

  host all all 0.0.0.0/0 md5

 

(2)修改postgresql.conf配置文件,放开远程地址

vim /var/lib/pgsql/12/data/postgresql.conf

listen_addresses
= '*'

(3)重新启动pg数据库

systemctl restart postgresql-12

六、查看服务

七、Navicat验证

 

posted @ 2025-01-03 16:37  吕钦扬  阅读(230)  评论(0)    收藏  举报