华为GaussDB数据库之Yukon安装与使用

一、Yukon简介

Yukon(禹贡),基于openGauss、PostgreSQL、GaussDB数据库扩展地理空间数据的存储和管理能力,提供专业的GIS(Geographic Information System)功能,赋能传统关系型数据库。

Yukon 支持二三维一体化的空间数据存储能力:

官网地址https://yukon.supermap.io/,此次我们基于华为GaussDB安装Yukon

二、软件版本

  • 机器配置:8核16G,CPU: Huawei Kunpeng 920 2.9GHz
  • 操作系统:EulerOS 2.8 64bit with ARM
  • 数据库版本:GaussDB Kernel 505.1.0 build 44f4fa53

三、部署Yukon

① 切换到omm用户

复制代码
su omm

② 解压yukon安装包

复制代码
tar -zxvf Yukon-2.0.2-GaussDB_505.1.B008_arm_20240228.tar.gz

③ 确认环境变量

复制代码
--检查GAUSSHOME环境变量,输出结果是否为空以及是否正确
echo $GAUSSHOME

--检查PGDATA环境变量,输出结果是否为空以及是否正确
echo $PGDATA

--检查LD_LIBRARY_PATH环境变量,输出结果是否为空以及是否包含数据库lib目录
echo $LD_LIBRARY_PATH

④ 执行安装命令

复制代码
cd yukon/
./install.sh -i

看到如下页面,Yukon安装成功

四、创建表空间、数据库、PostGIS扩展插件

① 启动数据库

复制代码
gs_ctl start

使用上一章节创建的用户继续操作,如果没有请重新创建

② 登录数据库

复制代码
gsql -d postgres -U zhangyongli -W supermap@123

创建新用户,需要提前设置omm密码,否则会报错

复制代码
gsql -d postgres
ALTER ROLE "omm" PASSWORD 'supermap@123';
CREATE USER zhangyongli with PASSWORD 'supermap@123' SYSADMIN;

3.1 创建表空间

复制代码
CREATE TABLESPACE testspace LOCATION '/home/omm/data';

注意:目录 /home/omm/data 必须已经存在且具有可访问权限。

3.2 创建数据库

复制代码
CREATE DATABASE testdata ENCODING='UTF8' TABLESPACE=testspace;

3.3 创建PostGIS扩展插件

输入\q 退出,使用新的数据库登录,创建PostGIS扩展插件

复制代码
gsql -d testdata -U zhangyongli -W supermap\@123
CREATE EXTENSION postgis;

== 提示 ==,如果不是用新创建的数据库登录,会报如下错误;如果确定用新用户登录的,无法创建可以尝试重启GaussDB数据库

复制代码
gaussdb=> CREATE EXTENSION postgis;
ERROR:  Extension is not a secure feature, and it may cause unexpected errors. using it need set enable_extension to true.

五、使用SuperMap iDesktopX测试

① 启动SuperMap iDesktopX 11i(2024),数据源右键新建数据库型数据源

②输入用户名密码后,点击创建,当创建成功后,则证明基础环境搭建完成

至此安装Yukon安装成功。

六、可能遇到的问题

6.1 iDesktopX创建Yukon数据源失败,

由于iDesktopX创建时依赖libpcre16,如果当前环境中没有安装会导致创建数据源失败(EulerOS 2.8没有)

检查是否有缺失,可以通过以下命令:

复制代码
cd /home/omm/package/lib/gaussdb
ldd yukon_geomodel-1.0.so | grep not

手动安装,需要root用户安装

复制代码
su - root
yum install pcre-utf16

安装完成后,不需要重启GaussDB数据库,直接再次使用iDesktopX创建

6.2 创建PostGIS插件时,报"could not open extension control file: No such file or directory"错误

问题原因:该问题是没有安装Yukon,应该先安装Yukon,再创建PostGIS插件。

解决办法:另开一个窗口,把Yukon安装好,然后在回到这个窗口再次执行

6.3 创建PostGIS插件时,报"ERROR:could not load library "postgis-3.so": /home/omm/package/lib/gaussdb/postgis-3.so: cannot open shared object file: No such file or directory"

问题原因:

  1. 检查环境变量是否配置成功,检查/home/omm/package/lib/gaussdb/这个目录下postgis-3.so文件是否存在,是否有权限。
  2. 检查是否是安装错Yukon包了,例如将X86安装在ARM环境中

    (转发请注明出处:https://blog.csdn.net/zhang90522 如发现有错,请留言,谢谢)
相关推荐
不剪发的Tony老师5 分钟前
QoreDB:一款跨平台、现代化的通用数据库客户端
数据库
五阿哥永琪27 分钟前
MySQL 中 VARCHAR、TEXT 与 JSON 类型:区别、场景与选型指南
数据库·mysql·json
a95114164230 分钟前
Go语言如何操作OSS_Go语言阿里云OSS上传教程【完整】
jvm·数据库·python
2401_8971905531 分钟前
MySQL中如何利用LIMIT配合函数分页_MySQL分页查询优化
jvm·数据库·python
Polar__Star1 小时前
C#怎么使用并发集合 C#ConcurrentDictionary和ConcurrentQueue线程安全集合怎么用【进阶】
jvm·数据库·python
xiaoshuaishuai81 小时前
C# Codex 脚本编写
java·服务器·数据库·c#
Rooting++1 小时前
mysql 算一堆经纬度的距离总长
数据库·mysql
y = xⁿ1 小时前
MySQL:count(1)与count(*)有什么区别,深分页问题
android·数据库·mysql
苏渡苇1 小时前
5 分钟跑起 Redis(Docker 版)
数据库·redis·缓存·docker·redis入门
m0_493934532 小时前
Go语言中 & 与 - 的本质区别及指针使用详解
jvm·数据库·python