如何在Rocky Linux 9安装PostgreSQL和PostGIS?PostGIS安装配置教程

在Rocky Linux 9上部署PostgreSQL和PostGIS,最稳妥且高效的路径是启用官方软件源,通过Dnf包管理器一键安装,并配置扩展模块以支持地理空间数据处理,整个过程无需编译源码,通常15分钟内即可完成基础环境搭建。

Rocky Linux 9安装PostgreSQL和PostGIS完整流程

Rocky Linux作为RHEL的社区复刻版,其稳定性与兼容性在服务器领域享有极高声誉,对于需要处理地理信息系统(GIS)数据的企业而言,PostGIS是PostgreSQL不可或缺的扩展,许多运维人员在面对新系统时,往往纠结于Rocky Linux 9安装PostgreSQL和PostGIS教程的具体细节,担心版本冲突或依赖缺失,借助现代化的包管理工具,这一过程已被极大简化。

如何在Linux中安装与使用PostgreSQL
加载中
如何在Linux中安装与使用PostgreSQL

第一步:更新系统并启用官方软件源

在开始任何安装之前,确保系统处于最新状态是避免潜在依赖冲突的关键,Rocky Linux 9默认的软件源中可能包含旧版本的PostgreSQL,为了获取最新的功能支持和安全补丁,建议启用PostgreSQL官方社区提供的软件源。

执行以下命令更新系统包索引:

sudo dnf update -y

安装PostgreSQL官方仓库配置包,这一步至关重要,因为它会将PostgreSQL的专用仓库添加到系统的软件源列表中,确保你能安装到比默认仓库更新、更稳定的版本。

sudo dnf install -y https://download.postgresql.org/pub/repos/yum/reporpms/EL-9-x86_64/pgdg-redhat-repo-latest.noarch.rpm

安装完成后,禁用默认的PostgreSQL模块,防止包管理器在默认源和官方源之间产生混淆。

sudo dnf module disable -y postgresql

第二步:安装PostgreSQL数据库服务器

你可以正式安装PostgreSQL服务器了,在Rocky Linux 9中,PostgreSQL的版本选择通常以主版本号为准,目前主流的生产环境多采用PostgreSQL 14或15版本,它们在性能优化和JSONB支持上表现优异。

如何在Rocky Linux 9安装PostgreSQL和PostGIS?PostGIS安装配置教程

sudo dnf install -y postgresql15-server

安装完成后,需要初始化数据库集群,这一步不同于早期版本,Rocky Linux 9引入了更规范的初始化脚本。

sudo /usr/pgsql-15/bin/postgresql-15-setup initdb

初始化成功后,启动PostgreSQL服务并设置开机自启。

sudo systemctl enable --now postgresql-15

数据库服务已在后台运行,你可以通过以下命令检查服务状态,确认是否正常运行:

sudo systemctl status postgresql-15

第三步:安装PostGIS扩展模块

PostGIS并非独立的数据库软件,而是PostgreSQL的一个扩展,安装过程相对简单,只需安装对应的软件包即可,在Rocky Linux环境中,PostGIS通常与特定版本的PostgreSQL绑定。

sudo dnf install -y postgresql15-contrib postgresql15-extensions

注意,postgresql15-contrib包含了各种有用的工具和功能,而postgresql15-extensions则确保扩展元数据正确注册。

安装完成后,需要进入数据库进行激活,默认情况下,PostGIS并未在所有数据库中自动启用,你需要登录到PostgreSQL命令行界面。

sudo -u postgres psql

进入psql交互界面后,选择你要启用GIS功能的数据库(例如默认的postgres库或新建的业务库),然后执行以下SQL命令:

CREATE EXTENSION postgis;
CREATE EXTENSION postgis_topology;
CREATE EXTENSION fuzzystrmatch;
CREATE EXTENSION postgis_tiger_geocoder;

这些命令将激活核心地理空间功能、拓扑支持以及地址解析功能,执行完毕后,输入q退出psql界面。

PostgreSQL与PostGIS配置优化要点

安装完成只是第一步,合理的配置才能发挥系统在PostgreSQL与PostGIS性能对比

如何在Rocky Linux 9安装PostgreSQL和PostGIS?PostGIS安装配置教程

中的优势,许多用户在使用初期遇到查询缓慢的问题,往往是因为内存分配不足或索引未正确建立。

内存与并发配置

PostgreSQL的配置参数直接影响其处理GIS数据的能力,主要的配置文件位于/var/lib/pgsql/15/data/postgresql.conf

  • shared_buffers:建议设置为物理内存的25%左右,对于GIS应用,由于空间索引和临时表占用较多内存,适当增加此值能显著提升查询速度。
  • work_mem:默认值通常较低(如4MB),对于复杂的空间连接查询,建议将其提升至64MB或更高,以避免磁盘排序。
  • maintenance_work_mem:用于创建索引和真空操作,建议设置为512MB或更高,以加速空间索引的建立。

修改配置后,务必重启服务使更改生效:

sudo systemctl restart postgresql-15

空间索引优化

PostGIS的核心优势在于空间索引,在使用CREATE INDEX创建空间索引时,务必使用GiST(Generalized Search Tree)索引类型,这是处理几何对象最高效的方式。

CREATE INDEX idx_gis_geom ON your_table USING GIST (geom);

定期执行VACUUM ANALYZE命令,更新统计信息,确保查询规划器能生成最优的执行计划。

常见问题排查与安全加固

在实际部署过程中,Rocky Linux 9 PostgreSQL 权限配置是另一个高频痛点,默认情况下,PostgreSQL仅允许本地用户通过peer认证登录,这可能导致远程连接失败。

远程访问配置

若需允许远程连接,需修改pg_hba.conf文件,位于/var/lib/pgsql/15/data/目录下。

  1. 编辑配置文件:
    sudo vi /var/lib/pgsql/15/data/pg_hba.conf
  2. 添加或修改IPv4和IPv6的本地连接规则,将peerident改为md5

    如何在Rocky Linux 9安装PostgreSQL和PostGIS?PostGIS安装配置教程

    scram-sha-256,并指定允许的IP地址段。

  3. 确保postgresql.conf中的listen_addresses设置为或具体IP。

防火墙设置

Rocky Linux 9默认启用Firewalld,需开放5432端口以允许外部访问。

sudo firewall-cmd --permanent --add-port=5432/tcp
sudo firewall-cmd --reload

Q&A:关于Rocky Linux 9安装PostgreSQL和PostGIS的常见疑问

Rocky Linux 9安装PostgreSQL和PostGIS时,如何验证安装是否成功?

验证安装是否成功,最直接的方法是登录数据库并查询版本信息,登录psql后,执行SELECT version();可查看PostgreSQL版本,执行SELECT PostGIS_Version();,若返回类似3.0的版本号,则说明PostGIS扩展已正确加载且可用,可尝试创建一个包含几何字段的小表并插入数据,若能成功执行且无报错,即证明环境配置无误。

在Rocky Linux 9上,PostgreSQL和PostGIS的升级路径是怎样的?

PostgreSQL的升级通常不建议跨大版本直接升级数据目录,业内共识认为,最安全的升级路径是使用pg_upgrade工具或逻辑备份(pg_dump/pg_restore),对于PostGIS,它随PostgreSQL版本绑定,因此升级PostgreSQL时,需先卸载旧版PostGIS扩展,升级数据库集群后,再安装新版本的PostGIS包并重新创建扩展,建议在升级前对数据进行完整备份,并在测试环境中先行验证。

PostGIS在Rocky Linux 9上的性能瓶颈通常出现在哪里?

性能瓶颈多出现在空间索引未建立、查询未使用空间算子或内存配置不足,据统计,多数情况下,未使用GiST索引的空间查询会导致全表扫描,极大降低效率,复杂的空间分析任务(如缓冲区分析、空间连接)对CPU和内存要求较高,若work_mem设置过低,会导致大量临时文件写入磁盘,从而拖慢速度,优化索引和合理分配内存是解决此类问题的核心手段。

首发原创文章,作者:王坚‌,如若转载,请注明出处:https://idctop.com/article/410759.html

(0)
WebHorizon新加坡OVZ VPS好用吗,新加坡高性价比VPS推荐
上一篇 2026年6月22日 10:26
共享CDN Sia是什么,Sia共享CDN怎么用
下一篇 2026年6月22日 10:30

相关推荐

  • 带宽测速不达标怎么办?为什么宽带测速总是达不到标称值?

    带宽测速不达标,核心原因通常集中在物理链路故障、硬件设备性能瓶颈、终端设备限制或网络配置错误四个维度,解决这一问题的核心逻辑在于“逐级排查、由外而内、先硬后软”,用户需优先检查光猫与路由器的连接状态及硬件规格,确认是否由于网线老化或路由器性能不足导致“小马拉大车”,随后通过有线直连测试排除无线信号干扰,最终定位……

    2026年3月7日
    16100
  • 互联网云网络集成是什么?云网络集成方案有哪些

    互联网云网络集成的核心在于打破传统IT架构孤岛,通过软件定义网络(SD-WAN)与公有云资源的深度融合,实现企业数据的高速、安全且低成本的全局互联,为什么传统网络架构正在被云网络集成取代?过去,企业连接总部、分支和云端应用,往往依赖昂贵的MPLS专线,这种模式就像在高速公路上只修了一条车道,不仅造价高昂,而且扩……

    2026年6月2日
    3300
  • html网站自动调节代码怎么实现?网页自适应布局代码

    HTML网站自动调节代码的核心在于利用CSS媒体查询(Media Queries)结合Flexbox或Grid布局,实现页面元素根据屏幕宽度自动重排,无需依赖复杂的JavaScript即可达成响应式效果,在移动互联网占据绝对主导流量的今天,一个无法在手机上完美显示的网站,等同于在数字时代关闭了大门,很多开发者或……

    2026年6月7日
    7610
  • 如何测试服务器线路好不好?服务器线路质量怎么测试?

    判断服务器线路质量的优劣,核心在于稳定性、延迟表现与路由路径的优化程度,一条优质的线路必须具备“三低一高”的特征:低丢包率、低延迟、低抖动以及高峰期高可用性,对于企业级应用或对网络质量要求较高的业务而言,线路质量直接决定了用户体验与业务连续性,测试不仅仅是看速度有多快,更要看在网络拥堵时段是否依然能够保持畅通无……

    2026年3月8日
    11800
  • 网站域名到期在哪里续费?域名续费流程和注意事项

    域名到期后,最直接且安全的续费方式是登录你当初注册域名的服务商后台(如阿里云、腾讯云、GoDaddy等)进行操作,切勿轻信搜索引擎广告或第三方不明链接,以免域名被恶意抢注或遭受钓鱼诈骗,当你的域名显示“即将到期”或“已过期”时,焦虑是正常的,但恐慌往往会导致操作失误,域名续费并非一个复杂的黑盒技术,而是一套标准……

    2026年6月21日
    1700
  • 年轻创业者如何用.icu域名成功?.icu域名注册多少钱

    年轻创业者选择.icu域名,核心在于利用其“互联网大学”的谐音梗与极低的注册成本,打造高记忆度、强网感且极具性价比的品牌形象,从而在初创期以最小成本获取最大流量关注,在2026年的数字商业环境中,域名早已超越了单纯的网址功能,成为品牌人格的第一张名片,对于资金有限但创意无限的年轻创业者而言,传统.com域名的高……

    2026年6月24日
    1500
  • 互联网BI数据分析工具怎么用?如何选型与落地

    互联网BI数据分析工具的核心价值在于将杂乱数据转化为可执行的商业洞察,企业应优先选择支持低代码拖拽、具备实时数据处理能力及高安全性的平台,以替代传统Excel手工报表,实现决策效率的质的飞跃,在数字化转型的深水区,数据不再是冰冷的数字,而是企业的核心资产,过去,业务人员依赖Excel拉取数据,耗时且易错;通过互……

    2026年6月2日
    4200
  • html字体样式为何失效?如何修复CSS字体不生效问题

    HTML字体失效通常是因为CSS样式覆盖、字体文件路径错误或浏览器缓存未刷新,优先检查CSS中的font-family属性及文件引用路径即可解决,当你在网页开发中精心设计了排版,却在浏览器中看到的是默认宋体或乱码时,这种挫败感非常普遍,这往往不是HTML本身的语法错误,而是样式层与资源层之间的“沟通”出现了断层……

    服务器宽带 2026年6月6日
    4900
  • 中小企业服务器带宽怎么选?服务器带宽选择建议与配置指南

    中小企业服务器带宽选择的核心逻辑在于“按需分配、适度冗余、动态调整”,切忌盲目追求高配造成成本浪费,也需避免带宽不足导致业务中断,最优策略是采用“基础带宽+峰值带宽”的混合计费模式,结合业务类型与用户规模进行精准测算,初期预留20%至30%的冗余空间以应对流量波动, 服务器带宽直接决定了用户访问的速度与体验,是……

    2026年3月8日
    13200
  • html网页登录怎么实现?html登录页面代码怎么写

    网页登录的核心在于构建“前端交互+后端验证+安全防护”的闭环体系,单纯依靠HTML无法完成登录,必须结合JavaScript与服务器端语言(如PHP、Java、Python)协同工作,同时引入HTTPS加密与CSRF令牌机制以保障用户数据安全,在2026年的互联网环境下,用户对于登录体验的容忍度极低,任何超过3……

    2026年6月10日
    2700

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

评论列表(1条)

  • 王雅婷
    王雅婷 2026年7月9日 16:24

    刚想细看,娃又喊我检查作业了😂 15分钟搞定?要是配环境不报错算我输,之前搞PostGIS坑死了,抽空回来试试这个源