PostgreSQL配置远程访问

systemctl stop firewalld.service
systemctl start firewalld.service
firewall-cmd --add-service=postgresql --permanent  开放postgresql服务
firewall-cmd --reload  重载防火墙
systemctl restart firewalld.service


Postgresql使用的端口是: 5432/tcp 
centos7防火墙默认的zone是:public 
1. firewall-cmd --zone=public --list-ports 
//查看已开放的端口 
2. firewall-cmd --zone=public --add-port=5432/tcp --permanent 
//永久添加5432端口,必须同时设置协议,且必须添加permanent配置,否则reload后失效 
3. firewall-cmd --reload //重加载  
4. systemctl restart firewalld.service //重启  

怎么搞都连不上,搞了一天终于找到原因了,阿里云个娃子的安全组中需要添加安全组规则,开放需要的端口5432!!!

修改默认PostgreSQL用户密码

PostgreSQL的默认用户为“postgres”。 
输入“su - postgres”并回车,切换至用户。 
输入“psql -U postgres”并回车,登录数据库。 
输入“ALTER USER postgres with encrypted password '123123';”(不要漏了“;”)并回车,设置默认用户postgre的密码,此处密码为“123123”,可自行修改。 
输入“\q”并回车, 退出数据库。 
输入“exit”并回车,退出用户。 

配置远程访问

输入“vi /var/lib/pgsql/10/data/postgresql.conf”并回车。 
光标下翻,找到“listen_addresses”。 按“i”键进入插入编辑模式,如果想对所有IP开放,则将“localhost”改为“*”即可,如果想仅对部分IP开放,多个IP之间用“, ”(逗号+空格)隔开。 

改完之后去掉“listen_address”前面的“#”。 

编辑完成后,按“Esc”键,输入“:wq”并回车。 

输入“vi /var/lib/pgsql/10/data/pg_hba.conf”并回车,将光标移至底部。 

按“i”键进入插入编辑模式,在“IPv4 local connections”下方添加允许连接的IP。 
如果想允许所有IPv4地址,则加入一行“host all all 0.0.0.0/0 md5”。IPv6方法类似。 

编辑完成后,按“Esc”键,输入“:wq”并回车。 
输入“systemctl restart postgresql-10”并回车,重启服务。 

你可能感兴趣的:(CentOS,PostgreSQL)