PostgreSQL PostGIS安装与配置,现有数据库启用PostGIS扩展

步骤:

一、PostGIS安装与配置

1、启动 Stack Builder 工具

安装 PostgreSQL 后,进入其安装目录下的bin文件夹,找到并运行Stack Builder程序(该工具用于扩展 PostgreSQL 组件)。

2、选择安装目标

在 Stack Builder 界面中,从列表中选择需要安装 PostGIS 的 PostgreSQL 服务器实例(通常为本地已安装的 PostgreSQL 版本),点击 "下一步"。

3、选择 PostGIS 版本

在可用扩展列表中,展开 "Spatial Extensions"(空间扩展)选项,从中选择适配当前 PostgreSQL 版本的 PostGIS 版本,勾选后点击 "下一步"。

4.设置下载与安装路径

点击 "浏览" 指定安装文件的下载目录(可自定义路径,也可使用默认路径),确认后点击 "下一步",工具将自动下载并启动 PostGIS 安装程序。

5.PostGIS 安装选项

  • 安装过程中保持默认配置即可。
  • 若需快速创建一个空间数据库,可勾选 "Create spatial database" 选项(勾选后将在 PostgreSQL 中自动生成一个包含空间扩展的数据库,不勾选则需后续手动创建)。

6、完成剩余安装步骤

后续步骤(如组件安装路径、权限设置等)均选择默认值,点击 "下一步" 或 "安装",直至安装完成,关闭 Stack Builder 即可。

至此,PostGIS 扩展已成功安装到 PostgreSQL 中,可通过创建空间数据库并启用 PostGIS 扩展开始使用空间功能。

二、现有数据库启用PostGIS扩展

若是在安装配置中勾选了"Create spatial database" 选项创建了数据库,则该数据库已经启用PostGIS扩展,能使用PostGIS扩展

若是想为其余数据库启用PostGIS扩展,则步骤如下:

步骤 1:连接到目标数据库

使用psql命令行工具或图形化工具(如 pgAdmin)连接到需要启用 PostGIS 的数据库。

方法 1:通过psql命令行

  1. 打开 Windows 命令提示符(CMD)或 PowerShell。

  2. 切换到 PostgreSQL 的bin目录(例如默认路径):

    复制代码
    cd "C:\Program Files\PostgreSQL\16\bin"  # 替换为你的PostgreSQL安装路径
  3. 连接到目标数据库(需替换dbname为你的数据库名,username为数据库用户名):

    复制代码
    psql -U username -d dbname -h localhost

    输入密码后进入数据库交互界面。

方法 2:通过 pgAdmin

  1. 打开 pgAdmin,在左侧导航栏中找到目标数据库,右键点击选择「Query Tool」。

步骤 2:启用 PostGIS 扩展

在连接到目标数据库的交互界面中,执行以下 SQL 命令(顺序不可颠倒):

复制代码
-- 1. 创建PostGIS核心扩展(必选)
CREATE EXTENSION postgis;

-- 2. 创建PostGIS拓扑扩展(可选,如需拓扑功能)
CREATE EXTENSION postgis_topology;

-- 3. 创建PostGIS raster扩展(可选,如需栅格数据支持)
CREATE EXTENSION postgis_raster;

-- 4. 创建地址编码扩展(可选)
CREATE EXTENSION postgis_tiger_geocoder;

执行成功后,PostGIS 扩展会被添加到当前数据库中。

步骤 3:验证安装

执行以下 SQL 命令检查 PostGIS 是否生效:

复制代码
-- 查看PostGIS版本
SELECT postgis_version();

如果返回类似如图3.3.2 rXXXX的版本信息,说明 PostGIS 已成功启用。

相关推荐
吃糖的小孩1 天前
给 QQ AI 机器人设计“可控记忆”:会话摘要、手动长期记忆与角色卡边界
数据库
笃行3502 天前
金仓数据库数据安全双防线:静态存储加密与传输加密实战
数据库
笃行3502 天前
金仓数据库物理备份实战:sys_rman 全流程演练与误覆盖抢救
数据库
笃行3502 天前
金仓数据库逻辑备份实战:从全库导出到 Schema 替换的完整闭环
数据库
SelectDB3 天前
阶跃星辰基于 SelectDB 构建 PB 级 Agent 可观测平台
大数据·数据库·aigc
这个DBA有点耶3 天前
GROUP BY优化全解:如何写出既不丢数据又飞快的分组查询
数据库·mysql·架构
掉头发的王富贵3 天前
【StarRocks】极限十分钟入门StarRocks
数据库·sql·mysql
Nturmoils3 天前
WHERE 条件别凭习惯写,常用查询先跑一遍
数据库
Databend4 天前
在 AWS 中国峰会逛了一天,我在 Databend 展台看到了 Agent 数据基础设施的新思路
数据库·人工智能·agent