网站建设这个职业备案网站首页地址
news/
2025/9/27 15:05:12/
文章来源:
网站建设这个职业,备案网站首页地址,运营管理系统,app线上推广是什么工作目录
依赖安装
下载编译libgeos
下载编译proj4
编译Postgresql9
编译PostGIS2
启动postgresql服务
开通外部网络访问
数据库开启PostGIS扩展
查看PostGIS版本
升级PostGIS版本 依赖安装
这个命令里面安装的包可能会多#xff0c;由于是编译GreenPlum用的#xff0…目录
依赖安装
下载编译libgeos
下载编译proj4
编译Postgresql9
编译PostGIS2
启动postgresql服务
开通外部网络访问
数据库开启PostGIS扩展
查看PostGIS版本
升级PostGIS版本 依赖安装
这个命令里面安装的包可能会多由于是编译GreenPlum用的没有尝试最小安装
yum install -y epel-release
yum install -y \
apr-devel \
bison \
bzip2-devel \
cmake3 \
flex \
gcc \
gcc-c \
krb5-devel \
libcurl-devel \
libevent-devel \
libkadm5 \
libyaml-devel \
libxml2-devel \
libzstd-devel \
openssl-devel \
perl-ExtUtils-Embed \
python-devel \
python-pip \
readline-devel \
xerces-c-devel \
zlib-devel yum install -y gdal-devel yum install -y gdal-devel
下载编译libgeos
yum install -y wget
wget http://download.osgeo.org/geos/geos-3.8.0.tar.bz2
yum install -y bzip2
tar jxf geos-3.8.0.tar.bz2
#编译
./configure -prefix/usr/local/geos make make install 下载编译proj4 wget http://download.osgeo.org/proj/proj-4.9.3.tar.gz #http://download.osgeo.org/proj/proj-6.2.1.tar.gz 注意项目需要的是4.x其他版本不可用
tar zxf proj-4.9.3.tar.gz
cd proj-4.9.3 yum install -y libsqlite3x-devel
./configure -prefix/usr/local/proj4 make make install
编译Postgresql9
#wget http://ftp.postgresql.org/pub/source/v9.6.9/postgresql-9.6.9.tar.gz
wget http://ftp.postgresql.org/pub/source/v9.6.9/postgresql-9.6.9.tar.bz2
tar jxvf postgresql-9.6.9.tar.bz2
cd postgresql-9.6.9
./configure -prefix/usr/local/pgsql
make make install
编译PostGIS2
#wget https://download.osgeo.org/postgis/source/postgis-2.2.8.tar.gz
wget https://download.osgeo.org/postgis/source/postgis-2.1.5.tar.gz
tar zxf postgis-2.1.5.tar.gz
cd postgis-2.1.5
./configure --with-pgconfig/usr/local/pgsql/bin/pg_config --with-projdir/usr/local/proj4
make make报错
lwgeom_accum.c:109:46: error: ‘AggState {aka struct AggState}’ has no member named ‘aggcontext’; did you mean ‘aggcontexts’?
aggcontext ((AggState *) fcinfo-context)-aggcontext; 搜索了好久才找到http://osgeo-org.1560.x6.nabble.com/2-0-7-build-error-on-Fedora-22-td5214694.html
vi postgis/lwgeom_accum.c
修改(参照https://trac.osgeo.org/postgis/browser/branches/2.1/postgis/lwgeom_accum.c)
108行附近
将
if (fcinfo-context IsA(fcinfo-context, AggState)) aggcontext ((AggState *) fcinfo-context)-aggcontext;
else if (fcinfo-context IsA(fcinfo-context, WindowAggState)) aggcontext ((WindowAggState *) fcinfo-context)-aggcontext;
else
改为
if ( ! AggCheckCallContext(fcinfo, aggcontext) )
然后编译就通过了
看来是发包之后有人修复了这个bug…… #安装
make install 启动postgresql服务
adduser postgres
mkdir /usr/local/pgsql/data
chown postgres /usr/local/pgsql/data
su - postgres
#初始化数据库
/usr/local/pgsql/bin/initdb -D /usr/local/pgsql/data
#启动服务
/usr/local/pgsql/bin/postgres -D /usr/local/pgsql/data logfile 21
#创建test库
/usr/local/pgsql/bin/createdb test
#psql登录到test库测试
/usr/local/pgsql/bin/psql test
#查看进程
ps -ef|grep postgres 开通外部网络访问
默认绑定127.0.0.1仅能本机访问
#开通防火墙
firewall-cmd --zonepublic --add-port5432/tcp --permanent
firewall-cmd --reload
#修改配置
cd /usr/local/pgsql/data
vi postgresql.conf
修改
listen_addresses 0.0.0.0
max_connections 1000 #信任远程连接
vi pg_hba.conf
修改
host all all 0.0.0.0/0 md5 重启数据库 #设置postgres用户的密码
/usr/local/pgsql/bin/psql -U postgres
登录数据库执行后提示符变为 postgres#
ALTER USER postgres with encrypted password postgres; 设置postgres用户密码为postgres \q 退出数据库 此时可以通过外部数据库客户端软件连接进行数据库管理 数据库开启PostGIS扩展
连接一个数据库执行sql语句
CREATE EXTENSION PostGIS
报错
ERROR: could not load library /usr/local/pgsql/lib/postgis-2.1.so: libproj.so.12: 无法打开共享对象文件: 没有那个文件或目录 此时修改
vi /etc/ld.so.conf
添加
/usr/local/proj4/lib #使配置生效
ldconfig 再次执行开启扩展
CREATE EXTENSION PostGIS
成功public模式下出现spatial_ref_sys表 创建GIS类型字段成功
CREATE TABLE public.gis_test (
id varchar(16) COLLATE pg_catalog.default NOT NULL,
name varchar(255) COLLATE pg_catalog.default,
the_geom public.geometry,
CONSTRAINT gis_test_pkey PRIMARY KEY (id)
)
;
查看PostGIS版本
SELECT PostGIS_version() 升级PostGIS版本
首先到源码目录/root/postgis-2.1.5
make uninstall
在到下载编译源码postgis-2.2.8
最后make install 重启Postgresql后版本依然是旧的此时DROP掉扩展
DROP EXTENSION PostGIS
提示有几个表已经使用了需要把相应的表删除掉注意做好备份
再次
DROP EXTENSION PostGIS
此时
SELECT PostGIS_version()
看到版本是新的了
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/919614.shtml
如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!