# KingbaseES(人大金仓)

人大金仓数据库管理系统KingbaseES(简称:金仓数据库或KingbaseES)是北京人大金仓信息技术股份有限公司自主研制开发的具有自主知识产权的通用关系型数据库管理系统。

下图为MapGIS使用KingbaseES数据库的流程图:

其中,KingbaseES服务器端及客户端的安装步骤可参考KingbaseES数据库官方操作手册,建议安装PG模式。这里就不做详细说明。下面会对配置KingbaseES数据源及创建KingbaseES数据库的操作步骤进行详细说明。

# 相关主题

# 新建数据库

Kingbase数据库安装完成后,默认会创建一个名为test的数据库。建议用户再新建一个数据库进行相关操作。

1. 切换为安装用户kingbase,登录默认数据库test。

#su - kingbase
#ksql -U system test

2. 新建用户"sample",密码为"sample"。

CREATE USER sample PASSWORD 'sample';

3. 新建数据库"sample",属于用户"sample"。

create database sample with owner='sample';

4. 登录新建的sample数据库。

#su - kingbase
#ksql -U system sample

5. 执行如下命令,即可启用postgis扩展。

create extension postgis;

# 安装启用mapgis3d_pg扩展

# 功能说明

mapgis3d_pg扩展主要用于支持MapGIS三维面体数据使用。MapGIS 10.7.0.10及之前版本,必须执行此步骤才能正常使用MapGIS三维面/体数据。自MapGIS 10.7.2.10开始,初始化PostgreSQL地理数据库后,该数据库即可正常使用MapGIS三维面/体,用户无需再手动安装mapgis3d_pg扩展。

# 操作说明

mapgis3d_pg扩展文件在"MapGIS安装目录\Program\Support\SDE\PostgreSQL"文件夹中,用户可根据数据库及操作系统版本,选择对应版本的扩展文件。如Linux x86_64的客户机上PostgreSQL 12对应的扩展文件在"MapGIS安装目录\Program\Support\SDE\PostgreSQL\12\Linux\x86_64"文件夹中,包括如下几个文件:

1. 将扩展文件拷贝到Linux机器中。

2. 将mapgis3d_pg--1.0.sql、mapgis3d_pg--1.0--1.1.sql、mapgis3d_pg--1.1.sql、mapgis3d_pg.control四个文件拷贝到"PostgreSQL安装目录/share/extension"中,,并赋予给postgres用户,设置可执行权限。其中,/usr/pgsql-12/为PostgreSQL安装目录。

#cp mapgis3d_pg--* mapgis3d_pg.control /usr/pgsql-12/share/extension/
#chown postgres:postgres mapgis3d_*
#chmod 755 -R mapgis3d_*

3. 将mapgis3d_pg.so文件拷贝到"PostgreSQL安装目录/bin"中,并赋予给postgres用户,设置可执行权限。

#cp mapgis3d_pg.so /usr/pgsql-12/bin/
#chown postgres:postgres mapgis3d_pg.so
#chmod 755 -R mapgis3d_pg.so

4. 切换到postgres用户,登录到新建的testdb数据库,启用mapgis3d_pg扩展。

#su - postgres
#psql -U postgres -d testdb
create extension mapgis3d_pg;

# 配置KingbaseES数据源

# 功能说明

安装KingbaseES数据库后,需在MapGIS中配置KingbaseES数据源,用来管理KingbaseES数据库。

# 操作说明

1. 在MapGIS GDBCatalog面板,启动"客户端配置管理"功能,弹出如下所示对话框:

2. 选择"PostgreSQL数据源",服务名称格式为"IP:{端口号}/{数据库名}",数据源名称可自定义。"确定"后MapGIS GDBCatalog目录树上即可看到该数据源。

# 初始化地理数据库

# 功能说明

配置Kingbase数据源后,需初始化地理数据库。

# 操作说明

1. 选择Kingbase数据源节点,右键"连接",可输入用户名密码,连接数据库。

2. 选择Kingbase数据源节点,右键"创建数据库",可初始化地理数据库信息。

3. 地理数据库初始化成功后,即可基于该数据库进行创建/导入GIS数据等操作。