以 Ubuntu Server 20.04,PostgreSQL 12 版本为例。
1. 安装
使用如下命令,安装指定版本的 PostgreSQL
sudo apt install postgresql-12
2. 修改默认数据库密码
PostgreSQL 安装后会默认创建一个 postgres 的数据库用户作为管理员账号,但是密码是随机的,所以首先要修改登录密码,使用 sudo -u postgres psql 登录数据库,这种方式登录是不需要密码的。
在出现 postgres=# 提示符后输入 alter user postgres with password '123456'; 修改密码,操作成功后输入 \q 退出 psql
现在尝试一下,可以使用新密码进行登录了 psql -U postgres -d postgres -h 127.0.0.1 -p 5432,然后输入新密码成功登录
3. 设置允许远程访问
安装完 PostgreSQL 数据库后,默认是只接受本地访问链接的,如果想在其它的主机*问数据库,需要进行相应的配置。
修改监听地址
sudo vim /etc/postgresql/12/main/postgresql.conf
将 #listen_addresses = 'localhost' 的注释去掉并改为 listen_addresses = '*'
修改可访问IP段
sudo vim /etc/postgresql/12/main/pg_hba.conf
在如下位置添加一行,表示允许任意地址通过密码进行远程访问
# TYPE DATABASE USER ADDRESS METHOD
# "local" is for Unix domain socket connections only
local all all peer
# IPv4 local connections:
host all all 127.0.0.1/32 md5
host all all 0.0.0.0/0 md5
# IPv6 local connections:
host all all ::1/128 md5
# Allow replication connections from localhost, by a user with the
# replication privilege.
local replication all peer
host replication all 127.0.0.1/32 md5
host replication all ::1/128 md5
重启数据库
完成上述两项操作后,使用 sudo service postgresql restart 重启数据库使配置生效。
现在可以从外部成功链接数据库了。