PG源码编译步骤
切换到root用户, 执行
groupadd postgres #添加PG用户组 useradd postgres #添加PG用户 passwd postgres #设置密码
解压PG源码包,切换到源码目录
./configure make make install #这步需要root权限
编译过程可能会提示部分开发包的缺失,我这里是缺失了zlib-devel包,用yum search zlib-devel查询包对应的名称,
然后yum install 包名(注意选对系统位数的包)
安装完成后,默认的会放在/usr/local/pgsql目录下,将/usr/local/pgsql/bin路径配置在PATH变量里面,
su - postgres #切换到postgres用户 initdb -D /home/postgres/pg_data #初始化数据目录,以后PG的数据和配置文件都存放在这里 postgres -D /home/postgres/pg_data >logfile 2>&1 & #启动服务,启动日志在当前目录的logfile文件中
客户端连接配置,修改数据目录的 pg_hba.conf,配置如下
local all all trust
# IPv4 local connections:允许所有的
host all all 0.0.0.0/0 trust
# IPv6 local connections:
host all all ::1/128 trust
第一行配置,允许本机psql客户端访问,第三行允许所有IP的访问,可采用子网来控制访问的范围。例如
#允许子网2以后的所有的IP访问该数据库
host all all 192.168.2.0/24 trust
修改 postgresql.conf,打开listen_addresses注释,并改成
listen_addresses = '*'
11. 修改CentOS 7防火墙设置,将PG默认端口5432打开
CentOS 7 改用了firewalld防火墙
firewall-cmd --zone=public --add-port=5432/tcp --permanent #将5432端口永久打开
firewall-cmd --reload #重新加载参数