银河麒麟V10 - postgresql/postgis完整部署

引言

首先了解一下银河麒麟V10的相关情况,我们可以知道其基于arm架构,且类似于CentOS,其安装过程类似于Linux整体环境的部署安装,下面做详细的介绍。

posgresql部署

安装前可以先进行用户以及用户组的配置,方便后面进行授权(通过编译安装也需要,后续步骤会体现)。
用户配置

# 新增用户组
groupadd postgres
# 创建用户组内用户
useradd -g postgres postgres
# 修改用户密码
passwd postgres

1. 通过yum安装

如果用户通过yum能匹配导相应版本,可以直接进行安装。
进行检索安装

yum search postgrs*                 # 选择对应版本进行安装
yum -y install postgresql.aarch64   # 安装相应程序包
yum -y install qt5-qtbase-postgresql.aarch64   # 安装相应程序包

在这里插入图片描述
安装完成后可以进行相应的检查

rpm -qa | grep postgres    # 检查PostgreSQL 是否已经安装
rpm -qal | grep postgres   # 检查PostgreSQL 安装位置

rpm -e  #卸载

2. 编译安装

2.1 安装软件准备

基于此情况,我们首先需要准备相应的安装包内容,下载地址参照 postgresql v10.0官网地址

postgresql源码编译时的 ./configure 需要此软件,安装方式。右键选择在终端打开

sudo su
yum install readline-devel

最好安装下openssl-devel,因为安装timescaledb时会提示这个未安装(一般情况也可以不安装)

yum install openssl-devel
2.2 文件包编译

将下载好的文件放入文件目录下,这里我放在postgresql目录下

cd /home/postgresql
tar -zxf postgresql-10.0.tar.gz
./configure
make
make install

3. 安装完成后进行数据库data配置

进行配置,先创建好相应的目录文件

mkdir -p /usr/local/pgsql/data                      # 创建数据存储目录
chown -R postgres:postgres /usr/local/pgsql/data    # 用户/用户组目录授权

初始化数据库

su - postgres
initdb -D /usr/local/pgsql/data
pg_ctl -D /usr/local/pgsql/data -l logfile start
createdb postgis
psql postgis

这里可以查看数据库安装好后的对应版本

select version();

在这里插入图片描述
接着需要设置相应的环境变量,方便程序读取到指定内容

# 编辑用户下的环境变量配置文件
vi ./.bash_profile

输入如下内容:

LD_LIBRARY_PATH=/usr/local/pgsql/lib
export LD_LIBRARY_PATH
PATH=/usr/local/pgsql/bin:$PATH
export PATH
export PGDATA=/usr/local/pgsql/data

编辑相应的数据库配置文件,修改postgresql.confpg_hba.conf

cd /usr/local/pgsql/data
# 查找listen_addresses在postgresql.conf文件中的位置并显示行号
cat postgresql.conf | grep -n listen_addresses 
# 编辑postgresql.conf文件,修改默认'localhost' 为'*'
vi postgresql.conf
# 编辑IPv4 local connections: 追加一行,如图所示
vi pg_hba.conf

# 修改完成后可以进行服务的重启
pg_ctl restart

此处截图为pg_hba.conf追加配置
配置文件修改

设置服务自动启动

chkconfig --list

PostGIS安装部署

此时发现postgis在麒麟系统环境内并没有提供相关yum安装包,那么则进行所需运行环境程序的编译安装即可。

1. 安装编译时环境

设置安装相应编译文件后也需要对相应的文件进行用户的授权,否则运行时会显示该用户无权限,或者文件不存在。运行 create extension *会出现错误

1.1 proj4
wget http://download.osgeo.org/proj/proj-4.9.3.tar.gz
tar -xf proj-4.9.3.tar.gz
cd proj-4.9.3
./configure --prefix=/data-postgis/pgsql/plugin/proj
make
make install
echo "/data-postgis/pgsql/plugin/proj/lib" > /etc/ld.so.conf.d/proj-4.9.3.conf
ldconfig
1.2 geos
wget http://download.osgeo.org/geos/geos-3.6.1.tar.bz2
tar -jxf geos-3.6.1.tar.bz2
cd geos-3.6.1
./configure --prefix=/data-postgis/pgsql/plugin/geos
make
make install
echo "/data-postgis/pgsql/plugin/geos/lib" > /etc/ld.so.conf.d/geos-3.6.1.conf
ldconfig
1.3 gdal
wget http://download.osgeo.org/gdal/2.1.2/gdal-2.1.2.tar.gz
tar -xf gdal-2.1.2.tar.gz
cd gdal-2.1.2
./configure --prefix=/data-postgis/pgsql/plugin/gdal
make
make install
echo "/data-postgis/pgsql/plugin/gdal/lib" > /etc/ld.so.conf.d/gdal-2.1.2.conf
ldconfig

2. 编译postgis安装包

2.1 编译安装
wget http://postgis.net/stuff/postgis-2.5.3dev.tar.gz
tar -xvzf postgis-2.5.3dev.tar.gz
cd postgis-2.5.3dev

./configure --prefix=/data-postgis/pgsql/plugin/postgis --with-pgconfig=/data-postgis/pgsql/bin/pg_config --with-geosconfig=/data-postgis/pgsql/plugin/geos/bin/geos-config --with-gdalconfig=/data-postgis/pgsql/plugin/gdal/bin/gdal-config --with-projdir=/data-postgis/pgsql/plugin/proj

make
make install

这里完成需要重新创建一个新的postgis_25数据库,详细参见postgresql部署3部分的-初始化数据库。否则启动/重启后一直提示找不到数据库。

2.2 安装扩展插件
# 切换postgres用户
su - postgres
# 登录PG数据库
psql
# 创建一个数据库
create database postgis;
# 切换到postgis库中
\c postgis
# 显示一下扩展模块
\dx

运行如下sql内容

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

做到这里就完成的插件的安装。
postgresql扩展插件

  • 4
    点赞
  • 32
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 8
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 8
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

熠熠仔

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值