PostgreSQL 设置允许访问IP的操作
程序员文章站
2022-07-08 18:13:39
postgresql安装后默认只能localhost:5432访问检验方法:curl localhost:5432# 访问成功提示curl: (52) empty reply from serverc...
postgresql安装后默认只能localhost:5432访问
检验方法:
curl localhost:5432 # 访问成功提示 curl: (52) empty reply from server
curl 127.0.0.1:5432 # 访问不成功提示 curl: (7) failed to connect to 172.17.201.227 port 5432: connection refused
修改pg_hba.conf
pg_hba.conf和postgresql.conf的存放目录都在(9.5版本)/etc/postgresql/9.5/main
host all all 192.168.1.0/24 trust
表示允许网段192.168.1.0上的所有主机使用所有合法的数据库用户名访问数据库,
其中,数字24是子网掩码,表示允许192.168.1.0–192.168.1.255的计算机访问
修改postgresql.conf
修改listen_addresses='localhost', 并放开注释(默认监听localhost)
# 192.168.1.111 为postgresql本机内网地址 listen_addresses='192.168.1.111'
重启postgresql
sudo /etc/init.d/postgresql restart
在本机
curl 192.168.1.111:5432 # 访问成功提示 curl: (52) empty reply from server
在内网其他机器
curl 192.168.1.111:5432 # 访问成功提示 curl: (52) empty reply from server
其他 创建用户
进入psql控制台
$ sudo -u postgres -i $ psql
创建用户 密码
postgres=# create user myusername with password 'mypassword' createdb;
创建数据库 用户授权
postgres=# create database mydb; postgres=# grant all privileges on database mydb to myusername; postgres=# \q
测试
$ psql -d mydb; mydb=# \dt
补充:postgresql数据库开启ip访问功能
在pg的安装目录的data子文件夹下。
1.postgresql.conf
检查下面的值是否是监听所有ip地址的连接请求,如下:
listen_addresses = '*'
如果是则不需要修改。
2.pg_hda.conf
在末尾的地方添加一行,如下:
host all all 0.0.0.0/0 md5
以上为个人经验,希望能给大家一个参考,也希望大家多多支持。如有错误或未考虑完全的地方,望不吝赐教。
推荐阅读
-
Oracle设置访问限制,IP层,用户层的方法教程
-
windows下指定IP地址远程访问服务器的设置方法
-
Windows下通过ip安全策略设置只允许固定IP远程访问
-
linux下通过iptables只允许指定ip地址访问指定端口的设置方法
-
VBScript使用ADSI为IIS批量添加屏蔽或允许访问的IP
-
docker内网搭建dns使用域名访问替代ip:port的操作
-
Windows Server 2008 R2通过IP安全策略阻止某个IP访问的设置方法
-
Postgresql设置远程访问的方法(需要设置防火墙或者关闭防火墙)
-
win2008 R2设置IP安全策略后在服务器内打开网站很慢或无法访问外部网站的原因
-
无线路由器设置只允许白名单中的设备访问的技巧