按照官网上说的在 initdb
阶段加 -D path
--pgdata=path
好像并没什么做用, 不知道是否是 CentOS6 的启动脚本写得有问题, 遂直接改了 /etc/init.d/postgres-X.Y
里的一行配置sql
PGDATA=path
再 initdb
就行了.网络
CentOS 果真是各类奇葩, 装好以后默认的验证方式都是 ident, 实际上要改为 password
才行.tcp
这时要启动 PG, 而且连上去执行一下ide
show hba_file
PG 会返回一个配置文件路径, 去这里改掉一行post
# host all all 127.0.0.1/32 ident # 改成下面这样 host all all 127.0.0.1/32 password
顺手可加上容许内网其余机器访问的规则, 好比postgresql
host all all 192.168.0.0/16 password
可是, 这样其实仍然没法从内网其余机器访问, 由于可能 PG 监听的只是 127.0.0.1code
% netstat -natp | grep 5432 tcp 0 0 127.0.0.1:5432 0.0.0.0:* LISTEN 1542/postgres
若是是这样的话, 要去改 postgresql.conf (与 hba_file 在同一个目录下), 找到 listen_addresses
这个配置 (极可能这个配置被注释掉了, 那么加上它)it
listen_addresses = 'localhost,192.168.x.x' # 逗号分隔的网卡地址, 按实际状况填写