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 已成功启用。

相关推荐
云老大TG:@yunlaoda36016 分钟前
如何进行华为云国际站代理商跨Region适配?
大数据·数据库·华为云·负载均衡
思成不止于此20 分钟前
【MySQL 零基础入门】事务精讲(二):ACID 特性与并发问题
数据库·笔记·学习·mysql
Boilermaker199225 分钟前
[MySQL] 初识 MySQL 与 SQL 基础
数据库·mysql
今晚务必早点睡43 分钟前
Redis——快速入门第二课:Redis 常用命令 + 能解决实际问题
数据库·redis·bootstrap
Hello.Reader1 小时前
Flink SQL Materialized Table 语句CREATE / ALTER / DROP介绍
数据库·sql·flink
Boilermaker19921 小时前
[MySQL] 服务器架构
数据库·mysql·架构
云老大TG:@yunlaoda3602 小时前
如何通过华为云国际站代理商CSBS进行备份策略设置?
运维·数据库·华为云
一 乐2 小时前
酒店预约|基于springboot + vue酒店预约系统(源码+数据库+文档)
java·数据库·vue.js·spring boot·后端
NineData2 小时前
NineData第三届数据库编程大赛:用一条SQL解数独问题
数据库·云计算·ai编程
来自于狂人2 小时前
华为云Stack服务实例创建失败通用排查对照表(备考+生产故障定位必备)
服务器·数据库·华为云