Postgresql 远程连接配置

原文地址:http://blog.chinaunix.net/uid-20684384-id-1895247.html

1. 设置远程访问认证机制

编辑 $POSTGRES/data/pg_hba.conf 文件,

# TYPE  DATABASE    USER        CIDR-ADDRESS          METHOD
# IPv4 local connections:
host    all         all         127.0.0.1/32          md5
# IPv6 local connections:
#host    all         all         ::1/128               md5

说明:

每一行有五个字段,

# TYPE DATABASE USER CIDR-ADDRESS METHOD

分别是:连接类型、可使用的数据库名、使用者、DIDR地址、和验证方法等五项。

下面,我只介绍一些针对每个字段常用的选项。

字段一:TYPE。

可以选择:local或host。

# TYPE DATABASE USER CIDR-ADDRESS METHOD
#允许IP为192.168.0.1的所有用户登陆到Postgres服务器的所有数据库,采用md5验证。
host all all 192.168.0.1/32 md5
#允许用户testuser在192.168.0.XX的网段任意机器登陆Postgres服务器,
#只能使用数据库testdb,采用md5验证。
host testdb testuser 192.168.0.1/24 md5

2. 改监听地址

默认下,POSTGRESQL只接受本地服务,要接受远程服务,需改postgresql.conf 文件listen_address = *

3. 如果是在Linux上的PostgreSQL

要打开 “unix的tcpip套接字”。

编辑 $POSTGRES/data/postgresql.conf 文件,

将tcpip_socket=off改成tcpip_socket=on即可。

前者只能允许本地的用户登陆Postgres数据库;后者可以接受远程客户登陆。所以,

我们应该使用“host”。

字段二:DATWABSE。

连接用户可以使用的数据库名字。可以使Postgres的一个具体的

数据库名,也可以使用“all”来允许用户访问所有数据库。

字段三:USER。可以指定某个具体的用户来连接Postgres数据库(还要结合后面的地址字段),

也可以使用“all”来允许所有用户连接数据库。

字段四:DIDR-ADDRESS。

这可能会让您不知所措,不知道它为何物。

其实,它就是IP地址与掩码的另一种表示方法而已。

Postgres是通过这个字段来了解,允许那些IP或IP网段连接此服务器。

它的格式是: IP地址/掩码。

这个掩码和子网掩码是一个道理,只不过是用一个小于等于32的正数来表示,

表示的正是子网掩码中高几位为1,

比如,255.255.255.0 就是“24”,说明高24位是1。

192.168.0.1/32 相当于 IP为192.168.0.1,子网掩码为255.255.255.255的网段,

很显然,这只表明192.168.0.1IP自己。

如果您对IP地址与子网掩码不太了解,请查看相关资料。

字段五:METHOD。

这是验证方法。可选的有:

reject:拒绝这个IP的用户访问;

md5:密码以md5作为hash编码;

password:密码作为明文传输(好恐怖!);

krb5:密码以krb5作为hash编码。

下面举一个例子,来说明如何进行设置:

时间: 2024-10-18 23:35:59

Postgresql 远程连接配置的相关文章

PostgreSQL远程连接配置

postgresql默认情况下,远程访问不能成功,如果需要允许远程访问,需要修改两个配置文件,说明如下: 1.postgresql.conf 将该文件中的listen_addresses项值设定为“*”,在9.0 Windows版中,该项配置已经是“*”,无需修改. 2.pg_hba.conf 在该配置文件的host all all 127.0.0.1/32 md5行下添加以下配置,或者直接将这一行修改为以下配置 host    all    all    0.0.0.0/0    md5 如果

postgreSQL远程连接出现:Error connecting to server :致命错误 SSL关闭的pg_hba.conf记录

异常截图: 解决方案: [[email protected] ~]# vi /var/lib/pgsql/data/pg_hba.conf # TYPE DATABASE USER CIDR-ADDRESS METHOD # "local" is for Unix domain socket connections only local all all ident # IPv4 local connections: host all all 127.0.0.1/32 ident hos

oracle远程连接配置

今日需要对站内所有的空间数据做入库处理,所以在服务器上安装了oracle,在本地需要对其进行连接,在网上查阅了相关资料,整理如下: 远程服务端配置:1. 数据库配置    因为要为外界客户端提供数据服务,所以一定要将 [数据库操作模式] 配置为 "共享服务模式". 我就是犯了这个错误,将操作模式配置成了"专用服务器模式",导至远程客户端无法正常连接.    如果不能确定数据库的操作模式,可以打开ORACLE "Database Configuration

mongodb远程连接配置

mongodb远程连接配置如下: 1.修改mongodb的配置文件,让其监听所有外网ip 命令:vim /etc/mongodb.conf bind_ip=127.0.0.1,这一行注释掉或者是修改成 bind_ip = 0.0.0.0 port = 27017,这一行为监听端口 auth=False,这一行为登陆验证 2.重启mongodb服务 命令:/etc/init.d/mongodb restart 2.1防火墙开放27017端口 命令:iptables -A INPUT -p tcp

ArcGIS平台中PostgreSQL数据连接配置总结

通常用户在使用要素服务时,要求数据必须是存放在空间数据库中的.同时,需要将数据库注册到ArcGIS for Server,这样在发布服务时就不需要进行数据拷贝,从而可以节省磁盘空间及服务发布时间.以下就ArcGIS平台的Desktop和Server产品中如何使用PostgreSQL数据库进行总结,包括Linux版的ArcGIS for Server和PostgreSQL以及Windows版的ArcGIS for Server和PostgreSQL. 1 前提条件 1.1 ArcGIS平台软件支持

huawei交换机远程连接配置

vty 0 4配置user-interface vty 0 4authentication-mode aaauser privilege level 15protocol inbound telnet 2.aaaaaa local-user admin password irreversible-cipher 密码local-user admin privilege level 15local-user admin service-type telnet 3.开启远程连接telnet serve

linux下mysql远程连接配置和启动重启关闭

linux mysql远程连接 远程使用Navicat for mysql 客户端软件连接 mySql数据时,连接出现Can’t connect to MySQL on ’192.168.1.99’(10061)错误时,是由于MySQL不准许远程连接.修改方法如下: 1:在服务端MySQL/my.ini文件 或者/etc/mysql/my.cnf .修改bind-address=127.0.0.1 为 bind-address=0.0.0.0 2:重新启动MySQL服务.测试连接情况: 如果没有

ubuntu下MySQL的安装及远程连接配置(转)

1.命令窗口中输入sudo apt-get install mysql-server mysql-client 即可(配置文件位置:/etc/mysql/my.cnf 启动文件位置:/etc/init.d/mysql) 2.安装期间会提示你输入ROOT账号的密码. 3.安装完成后,就可以利用命令mysql -u root -p来访问数据库了. 4.设置远程连接访问,安装完成后,MySQL的配置文件位于:/etc/mysql/my.cnf 5.vim /etc/mysql/my.cnf找到 bin

数据库远程连接配置

默认情况下,mysql只允许本地登录,如果要开启远程连接,则需要修改/etc/mysql/my.conf文件. 前提:需要确认下防火墙是否关闭................. 一.修改/etc/mysql/my.conf找到bind-address = 127.0.0.1这一行改为bind-address = 0.0.0.0即可 二.为需要远程登录的用户赋予权限1.新建用户远程连接mysql数据库grant all on *.* to admin@'%' identified by '1234