用户登录
用户注册

分享至

postgresql 远程连接

  • 作者: 晓相厷
  • 来源: 51数据库
  • 2020-09-27
安装PostgreSQL数据库之后,默认是只接受本地访问连接。如果想在其他主机上访问PostgreSQL数据库服务器,就需要进行相应的配置。
  配置远 程连接PostgreSQL数据库的步骤很简单,只需要修改data目录下的pg_hba.conf和postgresql.conf。
  pg_hba.conf:配置对数据库的访问权限,
  postgresql.conf:配置PostgreSQL数据库服务器的相应的参数。
  步骤:
  1.修改pg_hba.conf文件,配置用户的访问权限(#开头的行是注释内容):
  # TYPE DATABASE USER CIDR-ADDRESS METHOD
  # “local” is for Unix domain socket connections only
  local all all trust
  # IPv4 local connections:
  host all all 127.0.0.1/32 trust
  host all all 192.168.1.0/24 md5
  # IPv6 local connections:
  host all all ::1/128 trust
  其中,第7条是新添加的内容,表示允许网段192.168.1.0上的所有主机使用所有合法的数据库用户名访问数据库,并提供加密的密码验证。
  其中,数字24是子网掩码,表示允许192.168.1.0--192.168.1.255的计算机访问!
  2.修改postgresql.conf文件,将数据库服务器的监听模式修改为监听所有主机发出的连接请求。
  定位到#listen_addresses=’localhost’。PostgreSQL安装完成后,默认是只接受来在本机localhost的连接请 求。
  将行开头都#去掉,将行内容修改为listen_addresses=’*‘来允许数据库服务器监听来自任何主机的连接请求
  上面就是Linux设置PostgreSQL远程访问的方法介绍了,如果你不设置,则PostgreSQL默认只能范围本地,功能比较局限。



  不考虑系统版本、安装的系统是不是最小化安装、pgsql版本等问题,那么正常应该是下面的安装方法就可以成功的,如果想可以远程连接,则要在防火墙里开放端口5432。 三、安装postgresql # cd /usr/local/src/ # tar zxf postgresql-9.2.4.tar.gz # cd postgresql-9.2.4 # ./configure --prefix=/usr/local/pgsql # make # make install //和mysql一样建立组和用户 # groupadd postgres # useradd -g postgres postgres //给pgsql创建一个数据库的文件夹 # mkdir /usr/local/pgsql/data //设置data文件夹属于哪个用户 # chown postgres:postgres /usr/local/pgsql/data //切换到postgres用户 # su - postgres //生成数据库 $ /usr/local/pgsql/bin/initdb --encoding=utf-8 --no-locale -d /usr/local/pgsql/data $ exit //复制启动文件 # cp /usr/local/src/postgresql-9.2.4/contrib/start-scripts/linux /etc/init.d/postgresql //设置开机启动 # chmod 755 /etc/init.d/postgresql # chkconfig --add postgresql # chkconfig postgresql on # /etc/init.d/postgresql start //修改配置文件 # vim /usr/local/pgsql/data/postgresql.conf listen_addresses = '*' //是否允许其他计算机访问 port = 5432 //通过哪个端口访问 //这个网上查说是身份验证,大概就是要不要加密里之类的吧,没具体查过。 这里要注意,你的ip是ipv4还是ipv6,写到相应的条目下面,不要写错了。 另:如果复制粘贴的话有时候会出错,原因未知。建议自己手写。 # vim /usr/local/pgsql/data/pg_hba.conf host all all 0.0.0.0 0.0.0.0 trust # /etc/init.d/postgresql restart //看看能否正常进入postgresql # /usr/local/pgsql/bin/psql -u postgres -w # \q
软件
前端设计
程序设计
Java相关