当前位置: 首页 > web >正文

Kingbasepostgis 安装实践

文章目录

  • 前言
  • 一、安装准备
    • 1.1 部署方案规划
    • 1.2 SELINUX、防火墙状态检查
    • 1.3 操作系统时间检查
    • 1.4 创建用户及密码
    • 1.5 目录创建
    • 1.6 操作系统参数配置
      • 1.6.1 配置limits.conf文件
  • 二、安装
    • 2.1 上传安装包以及license授权文件
    • 2.2 拷贝安装文件
    • 2.3 命令行方式安装
      • 2.3.1简介
      • 2.3.2 许可协议
      • 2.3.3 选择安装集
      • 2.3.4 *选择授权文件
      • 2.3.5 *选择安装路径
      • 2.3.6 预安装摘要
      • 2.3.7 正在安装
      • 2.3.8 *初始化数据目录
      • 2.3.8 初始化完成
      • 2.3.9 执行root.sh脚本
    • 2.4 安装postgis扩展
      • 2.4.1 安装postgis
      • 2.4.2 验证
      • 2.4.2 食用
  • 3. 启动与停止数据库
  • 4. 卸载数据库
  • 5. 数据库备份和恢复
    • 5.1 全量备份
    • 5.2 恢复
  • 踩坑
    • 1. ./ksql可以执行 ksql无法运行
    • 2. 本地免密登录


前言

安装人大金仓kingbaseV8R6实战。
相关安装包下载,GO!
官网地址 https://www.kingbase.com.cn/download.html

一、安装准备

1.1 部署方案规划

数据库安装用户:kingbase
软件包、License存放目录:/home/kingbase/install
数据库软件安装目录:/home/kingbase/KingbaseES/V8
数据库数据目录:/data/dbdata
数据库备份目录:/data2/dbbackup
数据库模式:PG
数据库端口:54321
数据库用户:SYSTEM
数据库密码:12345678ab
数据库插件: postgis3.1.2

1.2 SELINUX、防火墙状态检查

vi /etc/selinux/config 
SELINUX=disabled			注:禁用状态(确认是否可以修改)
service iptables stop
chkconfig iptables off
iptables -L
iptables -F
systemctl stop firewalld			注:关闭防火墙(确认是否可以修改)
systemctl disable firewalld

1.3 操作系统时间检查

date			
date -s		注:如不正确,使用data -s修改

1.4 创建用户及密码

注意:安装数据库时,必须使用非root用户安装

useradd -m -U -s /bin/bash kingbase -d /home/kingbase
#注:-m创建用户家目录,-U 创建用户同名用户组
passwd kingbase 
#输入密码 

1.5 目录创建

注:无论规划放到哪个目录,属主属组必须是安装用户。
(1)数据库安装包及license文件存放目录:

mkdir /home/kingbase/install	
chown -R kingbase.kingbase /home/kingbase/install

(2)数据库软件目录:

mkdir -p /home/kingbase/KingbaseES/V8	
chown -R kingbase.kingbase /home/kingbase/KingbaseES/V8

(3)数据库数据目录(选择存储空间大的做数据目录,外挂磁盘1目录):

mkdir -p /data/dbdata		
chown -R kingbase.kingbase /data/dbdata

(4)数据库备份目录(选择存储空间大的做备份目录,最好不与数据目录在同一盘下,外挂磁盘2目录):
A:物理备份路径

mkdir -p /data2/dbbackup/kbbr_repo
chown -R kingbase.kingbase /data2/dbbackup/kbbr_repo

B:逻辑备份路径

mkdir -p /data2/dbbackup/logical
chown -R kingbase.kingbase /data2/dbbackup/logical

1.6 操作系统参数配置

1.6.1 配置limits.conf文件

#追加写入
vi /etc/security/limits.conf        
root 	soft 	nofile 	  655360
root 	hard 	nofile     655360
root 	soft 	nproc 	  655360
root	hard 	nproc 	  655360
root 	soft 	memlock  50000000
root 	hard 	memlock  50000000
root	soft 	core   	  unlimited
root 	hard 	core   	  unlimitedkingbase 	soft 	nofile 	  655360
kingbase 	hard 	nofile     655360
kingbase 	soft 	nproc 	  655360
kingbase	hard 	nproc 	  655360
kingbase 	soft 	memlock  50000000
kingbase 	hard 	memlock  50000000
kingbase	soft 	core   	  unlimited
kingbase 	hard 	core   	  unlimited

附参数详解:
soft ——指当前系统生效的设置值。
hard——指系统中所能设定的最大值。soft的限制不能比hard的限制高。
nofile——指打开文件的最大数目
nproc——指进程的最大数目
core ——指限制内核文件的大小

二、安装

2.1 上传安装包以及license授权文件

使用U盘、光盘、FTP、Xshell等工具将安装包及license.dat文件上传至服务器,可直接放入之前规划好的/home/kingbase/install下。

2.2 拷贝安装文件

root用户执行:

mkdir  /home/kingbase/cdrom
cd  /home/kingbase/install/
mount  KingbaseES_V008R006C004B0021_Lin64_single_install.iso  /home/kingbase/cdrom
cd  ../cdrom
cp  -r  *  ../install
cd /home/kingbase/install/
chown -R kingbase.kingbase *

在这里插入图片描述

2.3 命令行方式安装

su - kingbase
cd /home/kingbase/install
bash setup.sh -i console

2.3.1简介

显示简介信息,提示按enter键继续,进行下一步操作。
在这里插入图片描述

2.3.2 许可协议

用户许可协议条款,按照提示enter键继续,直至显示“是否接受此许可协议条款”时,输入Y。
在这里插入图片描述

2.3.3 选择安装集

无脑1
在这里插入图片描述

2.3.4 *选择授权文件

填写相应授权文件路径(之前规划好的license文件放入/home/kingbase/install目录下),如未找到,则无法继续安装。
在这里插入图片描述

2.3.5 *选择安装路径

输入绝对路径,用做软件安装目录(输入之前规划的/home/kingbase/KingbaseES/V8),按enter键继续,提示路径是否正确,无问题后,回车继续安装。
在这里插入图片描述

2.3.6 预安装摘要

显示安装信息,如果信息有误,输入“BACK”进行更改,如果信息无误,按enter键继续。
在这里插入图片描述
在这里插入图片描述

2.3.7 正在安装

正在安装界面,此过程需要等待。

2.3.8 *初始化数据目录

数据目录即data目录,输入文件夹路径(之前规划的/data/dbdata);
输入端口信息port:默认54321;
数据库管理员:默认SYSTEM;
管理员密码:手动输入12345678ab!,确认密码;
字符集编码:默认UTF-8;
数据库模式:1. PG,2. Oracle,默认Oracle兼容模式,选PG。
字符大小写敏感特性:PG必须是YES。
存储块大小默认就可以。
注:数据库模式须提前确认好,初始化完成之后不能通过配置文件修改,只能再次初始化。

2.3.8 初始化完成

初始化完成之后,会提示若将此服务注册为系统服务须执行root.sh脚本,按enter键退出安装程序。

2.3.9 执行root.sh脚本

执行root.sh脚本,是指将kingbase8d服务注册为系统服务,并实现开机自启,此操作必须由root用户执行,安装用户无此权限。执行后会提示启动成功,如未成功,可根据提示,查看相关log日志。

su root 
cd /home/kingbase/KingbaseES/V8/install/script
bash ./root.sh

在这里插入图片描述

2.4 安装postgis扩展

2.4.1 安装postgis

切回至存放postgis文件夹的目录,执行解压命令,将插件包 bin、lib、share/extension 目录下的文件全部依次拷贝到数据库安装目录的 Server/bin、Server/lib、Server/share/extension。

tar -zxvf postgis-3.1.2_X86_V008R006C008B0020.tar.gz
cd postgis-3.1.2
cp ./bin/* /home/kingbase/KingbaseES/V8/KESRealPro/V008R006C008B0020/Server/bin/
cp ./lib/* /home/kingbase/KingbaseES/V8/KESRealPro/V008R006C008B0020/Server/lib/
cp -r ./share/* /home/kingbase/KingbaseES/V8/KESRealPro/V008R006C008B0020/Server/share/

在这里插入图片描述
重启服务

cd /home/kingbase/KingbaseES/V8/Server/bin/./sys_ctl restart -D /data/dbdata/

2.4.2 验证

dos验证

cd /home/kingbase/KingbaseES/V8/Server/bin/
./ksql -Usystem -dtest
#输入数据库system用户密码
\dx
select * from pg_available_extensions where name like 'post%';

在这里插入图片描述
navicat 验证
新建数据库,选择扩展里面有postgis
在这里插入图片描述

2.4.2 食用

创建数据库后执行下面sql,🆗!

create extension postgis;
create extension postgis_raster;
create extension postgis_sfcgal;
create extension fuzzystrmatch;
create extension postgis_tiger_geocoder;
set exclude_reserved_words =level;
create extension postgis_topology;
create extension address_standardizer;
create extension address_standardizer_data_us;

3. 启动与停止数据库

使用sys_ctl命令,需要kingbase用户在安装目录bin下执行
其中$DBDATA是指Kingbase数据库的数据目录

cd /home/kingbase/KingbaseES/V8/Server/bin/
./sys_ctl stop -D /data/dbdata     #停止数据库
./sys_ctl start -D /data/dbdata    #启动数据库
./sys_ctl restart -D /data/dbdata  #重启数据库
./sys_ctl status -D /data/dbdata   #查看数据库状态

4. 卸载数据库

su - kingbase
cd /home/kingbase/KingbaseES/V8/Uninstall
sh Uninstaller

切换到root用户,进入到安装目录下的Scripts目录,执行rootuninstall.sh,(将kingbase8d服务从系统服务中删除),执行后直接返回命令行。

su root
uninstall.sh

5. 数据库备份和恢复

5.1 全量备份

su kingbase
nohup sys_dumpall -Usystem -f full.sql &

5.2 恢复

创建mydb数据库后

su kingbase
cd /home/kingbase/KingbaseES/V8/Server/bin/
nohup ksql -U system -d mydb -h localhost -p 54321 -f /data/package/sql/full.sql &

踩坑

1. ./ksql可以执行 ksql无法运行

配置环境变量
检查用户家目录下/home/kingbase/.bash_profile中是否包含下列代码,不存在则增加。

su kingbase
vi /home/kingbase/.bashrc
# 在/home/kingbase/.bashrc文件末尾增加如下配置。
export PATH=/home/kingbase/KingbaseES/V8/Server/bin:$PATH
export LD_LIBRARY_PATH=/home/kingbase/KingbaseES/V8/Server/lib:$LD_LIBRARY_PATH
export KINGBASE_DATA=/data/dbdata
export KINGBASE_PORT=54321
export KINGBASE_HOME=/home/kingbase/KingbaseES/V8
# 生效
source /home/kingbase/.bashrc
# 测试
ksql -Usystem -dtest

2. 本地免密登录

修改/data/dbdata/sys_hba.conf

# "local" 只能用于UNIX域套接字
local   all             all                                     trust
# IPv4 本地连接:
host    all             all             127.0.0.1/32            trust
host    all             all             0.0.0.0/0               scram-sha-256
# IPv6 本地连接:
host    all             all             ::1/128                 trust
host    all             all             ::0/0                   scram-sha-256
# 允许具有流复制权限的用户使用localhost进行流复制连接
#local   replication     all                                     scram-sha-256
#host    replication     all             127.0.0.1/32            scram-sha-256
#host    replication     all             ::1/128                 scram-sha-256

重启服务./sys_ctl restart -D /data/dbdata


在这里插入图片描述

http://www.xdnf.cn/news/16345.html

相关文章:

  • Go 官方 Elasticsearch 客户端 v9 快速上手与进阶实践*
  • R 语言绘制六种精美热图:转录组数据可视化实践(基于 pheatmap 包)
  • Redis替代方案:腾讯云TDSQL-C内存优化实战,TPS秒上涨
  • 大语言模型生成式人工智能企业应用
  • 水库大坝安全监测的主要内容
  • 微算法科技(NASDAQ:MLGO)采用分布式哈希表优化区块链索引结构,提高区块链检索效率
  • mac下 vscode 运行 c++无法弹出窗口
  • 《C++初阶之STL》【vector容器:详解 + 实现】
  • 智能问答分类系统:基于SVM的用户意图识别
  • Android Paging 分页加载库详解与实践
  • 航段导航计算机 (Segment_Navigator) 设计与实现
  • 重构 MVC:让经典架构完美适配复杂智能系统的后端业务逻辑层(内附框架示例代码)
  • 【MacOS】发展历程
  • HTTP 请求方法有哪些?
  • 《基于电阻抗断层扫描(EIT)驱动的肌肉骨骼模型表征人体手臂动态意图用于人机交互》论文解读
  • 当人机交互迈向新纪元:脑机接口与AR/VR/MR的狂飙之路
  • Spring Cloud Gateway 服务网关
  • 2025年第四届创新杯(原钉钉杯)赛题浅析-助攻快速选题
  • Android Studio 2024 内嵌 Unity 3D 开发示例
  • 【第四章:大模型(LLM)】01.神经网络中的 NLP-(1)RNN、LSTM 和 GRU 的基本原理和应用
  • 全国产化5G-A低空经济基座
  • 【Unity笔记】OpenXR 之VR串流开发笔记:通过RenderTexture实现仅在PC端展示UI,在VR眼镜端隐藏UI
  • 大模型进阶面试题
  • 车载 CAN-Bus 数据记录仪说明书
  • 【C语言进阶】一篇文章教会你文件的读写
  • 【unitrix】 6.16 非负整数类型( TUnsigned )特质(t_unsingned.rs)
  • 电子电子架构 --- 软件项目的开端:裁剪
  • Java面试题(中等)
  • Javascript NaN Symbol BigInt
  • TDengine 转化类函数 CAST 用户手册