ps:我是在windows中的 wsl 中创建了 ubuntu,所以不涉及任何防火墙、端口相关的内容
1. 安装postgresql
shell
sudo apt update
sudo apt install postgresql postgresql-contrib
安装完成后系统会自动创建一个 postgres 用户,先切换到 postgres 用户
shell
# 切换用户
sudo -i -u postgres
设置密码

sql
# 查看配置文件地址
show config_file;
show hba_file;

postgresql.conf 修改

pg_hba.conf 修改

重启:
shell
systemctl restart postgresql
2. 安装插件 [postgis、pgrouting]
这个里面有相关说明
https://github.com/dhamaniasad/awesome-postgres
我的 postgresql 版本是 16
1. 添加PostgreSQL Apt仓库(如果尚未添加)
```shell
# 安装所需工具
sudo apt install ca-certificates gnupg curl
# 添加PGDG密钥
curl https://www.postgresql.org/media/keys/ACCC4CF8.asc | gpg --dearmor | sudo tee /etc/apt/trusted.gpg.d/apt.postgresql.org.gpg >/dev/null
# 添加仓库
sudo sh -c 'echo "deb http://apt.postgresql.org/pub/repos/apt $(lsb_release -cs)-pgdg main" > /etc/apt/sources.list.d/pgdg.list'
# 更新包列表
sudo apt update
```
2. 安装PostGIS for PostgreSQL 16(其它版本直接把下面的 16 改成你的版本即可)
shell
# 查看可用的PostGIS版本 ,如果是其它版本就把 16 改成你的本
apt search postgresql-16-postgis
# 安装PostGIS命令行工具
sudo apt install postgis
# postgis插件
sudo apt install postgresql-16-postgis-3
# pgrouting 插件
sudo apt install postgresql-16-pgrouting
如果有提示升级啥的直接选 no
3. 测试
shell
# 切换用户 进入 postgresql 命令行
sudo -u postgres psql
CREATE DATABASE gis_test;
# 连接到新数据库
\c gis_test
# 启用PostGIS扩展
CREATE EXTENSION postgis;
# 验证安装
SELECT PostGIS_Version();
# 应该看到类似这样的输出:
# POSTGIS="3.4.0" [EXTENSION] PGSQL="160" GEOS="3.11.1" PROJ="9.1.1" ...