CentOS 7 安装 PostgreSQL


添加 PostgreSQL11 仓库到 Centos7

yum install https://download.postgresql.org/pub/repos/yum/11/redhat/rhel-7-x86_64/pgdg-centos11-11-2.noarch.rpm -y

查看可安装的软件

yum list postgresql*

安装 PostgreSQL11

yum install postgresql11 postgresql11-server -y

初始化数据库

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

开机启动

systemctl enable postgresql-11

启动

systemctl start postgresql-11

查看启动信息

systemctl status postgresql-11

启用远程访问

默认配置文件在 /var/lib/pgsql/11/data/postgresql.conf

vim /var/lib/pgsql/11/data/postgresql.conf
...bash
listen_addresses = '*'  # 默认 listen_addresses = 'localhost' 
...

/var/lib/pgsql/11/data/pg_hba.conf 配置基于主机的认证。这个文件控制哪些主机允许连接。要注意默认情况下允许所有本地用户连接任何数据库用户,包括数据库的超级用户
默认会创建 postgres 用户 只能本机登录, 建议不要为这个用户设置密码

切换 到 postgres 用户 创建新用户

su - postgres
psql -l     # 查看数据库
psql        # 进入命令模式
\password   # 为 postgres 用户设置密码
\q          # 退出

其他主机可访问

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

# 添加如下内容
# IPv4 host connections:
host    all             all             0.0.0.0/0            md5

启用 unix 域套接字

vim /var/lib/pgsql/11/data/postgresql.conf
unix_socket_directories = '/var/run/postgresql, /tmp'
#unix_socket_group = ''
unix_socket_permissions = 0777 
vim /var/lib/pgsql/11/data/pg_hba.conf
# "local" is for Unix domain socket connections only
local   all             all                                     md5

重启数据库

systemctl restart postgresql-11

参考
pg_hba.conf文件说明与配置
PostgreSQL (简体中文)
Linux downloads (Red Hat family)


作者: 浪子
版权声明: 本博客所有文章除特別声明外, 均采用 CC BY 4.0 许可协议。转载请注明来源 浪子!
  目录