You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

PostgreSQL 13启用PostGIS报错:无法访问文件$libdir/postgis-2.2

解决PostgreSQL 13启用PostGIS时的"could not access file $libdir/postgis-2.2"报错及版本安装失败问题

问题根源分析

你遇到的两个问题核心是版本适配错误:

  • 系统为Ubuntu 16.04(从psql版本标识pgdg16.04可判断),但你指定安装的是适配Ubuntu 20.04的PostGIS版本,导致apt无法找到对应包;
  • 创建扩展时报错找不到postgis-2.2,大概率是之前残留的无效扩展配置,或是系统未安装对应版本的PostGIS库文件。

解决步骤

  1. 修复PostGIS安装问题
    不要指定具体版本号,让apt自动匹配Ubuntu 16.04与PostgreSQL 13兼容的PostGIS版本:

    sudo apt update
    sudo apt install postgresql-13-postgis-3 postgresql-13-postgis-3-scripts
    

    安装完成后重启PostgreSQL服务:

    sudo systemctl restart postgresql
    
  2. 重新创建PostGIS扩展
    登录目标数据库,清理可能存在的无效扩展记录后重新创建:

    sudo -u postgres psql -d lom
    

    在psql交互环境中执行:

    -- 检查并删除无效的PostGIS扩展(如果存在)
    DROP EXTENSION IF EXISTS postgis;
    -- 创建正确的PostGIS扩展
    CREATE EXTENSION postgis;
    -- 验证安装结果
    SELECT postgis_version();
    
  3. 若仍报错,手动指定版本创建
    如果还是出现找不到库文件的错误,先手动查找系统中已安装的PostGIS库版本:

    sudo find /usr/lib/postgresql/13/lib -name "postgis-*.so"
    

    找到对应版本(比如postgis-3.so)后,在psql中指定版本创建扩展:

    CREATE EXTENSION postgis VERSION "3.x.x"; -- 替换为实际查到的版本号
    

内容的提问来源于stack exchange,提问作者mascai

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.24 06:03:23