ubuntu配置postgres远程连接

2018/11/14 posted in  linux

修改远程连接属性

  1. 修改postgresql.conf

postgresql.conf存放位置在/etc/postgresql/9.x/main下,这里的x取决于你安装PostgreSQL的版本号,编辑或添加下面一行,使PostgreSQL可以接受来自任意IP的连接请求。

listen_addresses = '*'

  1. 修改pg_hba.conf

pg_hba.conf,位置与postgresql.conf相同,虽然上面配置允许任意地址连接PostgreSQL,但是这在pg中还不够,我们还需在pg_hba.conf中配置服务端允许的认证方式。任意编辑器打开该文件,编辑或添加下面一行。

#TYPE  DATABASE  USER  CIDR-ADDRESS  METHOD
host  all  all 0.0.0.0/0 md5

默认pg只允许本机通过密码认证登录,修改为上面内容后即可以对任意IP访问进行密码验证。对照上面的注释可以很容易搞明白每列的含义,具体的支持项可以查阅文末参考引用。

完成上两项配置后执行sudo service postgresql restart重启PostgreSQL服务后,允许外网访问的配置就算生效了。

配置默认用户密码

设置PostgreSQL的用户名和密码
因为PostgreSQL在安装初始化后就会存在一个账户 postgres ,可以称之为叫做超管的账户,我们现在需要做的是修改这个账号的密码。

sudo su # 切换到 root 账号
su - postgres # 切换到 postgres 账号
psql # 进入 postgresql 工作台
alter user postgres with password '你的密码'; # 执行此命令修改成你的密码
\q # 退出工作台

navicat 配置

navicat 配置postgresql数据库连接