在Linux环境下安装配置PostgreSQL 11和PostGIS 3,


Ubuntu

首先添加PostgreSQL的官方源。

Ubuntu 16.04

sudo echo "deb http://apt.postgresql.org/pub/repos/apt/ xenial-pgdg main" > /etc/apt/sources.list.d/pgdg.list

Ubuntu 18.04

sudo echo "deb http://apt.postgresql.org/pub/repos/apt/ bionic-pgdg main" > /etc/apt/sources.list.d/pgdg.list

导入仓库的数字签名,再更新包列表

wget --quiet -O - https://www.postgresql.org/media/keys/ACCC4CF8.asc | sudo apt-key add -

sudo apt-get update

接下来运行apt-get install postgresql-11即可开始安装。

完成安装后使用apt-get install postgresql-11-postgis-3安装postgis。

CentOS

首先先更新源,使用

yum update -y

添加PostgreSQL的官方源

rpm -Uvh https://yum.postgresql.org/11/redhat/rhel-7-x86_64/pgdg-redhat-repo-latest.noarch.rpm

安装Postgres 11数据库与客户端

yum install postgresql11-server postgresql11 -y

安装PostGIS

yum install postgis30_11

初始化数据库

/usr/pgsql-11/bin/postgresql-11-setup initdb

启用数据库的服务

systemctl enable postgresql-11.service
systemctl start postgresql-11.service

配置连接数据库

在上述安装过程完成后,默认的数据库没有登陆密码,而且不允许远程用户登录。因此接下来需要配置远程登录与设置Postgres用户的登陆密码。

打开配置文件

vim /var/lib/pgsql/11/data/postgresql.conf

找到listen_addresses = 'localhost'这行取消其注释并将其改为listen_addresses = '*'

打开配置文件

vim /var/lib/pgsql/11/data/pg_hba.conf

找到host的配置行将其修改为如下设置

host all all 0.0.0.0/0 md5

重启服务

systemctl restart postgresql-11.service

设置管理员密码

sudo -u postgres psql -c "alter user postgres with password '您的密码'"

接下来使用客户端就可以连接上数据库服务器了。如果还不能访问,则需要设置防火墙,允许端口5432的访问,具体不过多介绍。

相关内容