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.pswp.cn/diannao/92796.shtml
繁體地址,請注明出處:http://hk.pswp.cn/diannao/92796.shtml
英文地址,請注明出處:http://en.pswp.cn/diannao/92796.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

移動端設備能部署的llm

mlc-llm 內置RedPajama hf示例模型 TheBloke/Mistral-7B-Instruct-v0.2-GGUF https://github.com/mlc-ai/mlc-llm/tree/main llama.cpp https://github.com/ggml-org/llama.cpp reference --- MLC-LLM:大模型如何部署到瀏覽器 / 手機?完整流程復現…

Ubuntu硬盤掛載

一、在 Ubuntu 中,你可以用以下命令快速查看 所有已連接但尚未掛載的硬盤和分區:lsblk -o NAME,SIZE,FSTYPE,MOUNTPOINT,UUID輸出中 MOUNTPOINT 為空的行,就是 未掛載的分區。sda ├─sda1 500M ext4 /boot ├─sda2 1.8T ntfs └─sda3 …

JavaScript -Socket5代理使用

axios 安裝兩個包 socks-proxy-agent,axios const { SocksProxyAgent } require(socks-proxy-agent); const axios require(axios);const socks5Axios axios.create();const socks5 () > {const socks5Agent new SocksProxyAgent("socks5://112.194.8…

[特殊字符] 從數據庫無法訪問到成功修復崩潰表:一次 MySQL 故障排查實錄

一次典型的 MySQL 故障排查與修復全過程,涵蓋登錄失敗、表崩潰、innodb_force_recovery 救援、壞表剔除與數據恢復等關鍵操作。一、問題背景某業務系統運行多年,數據庫使用的是 MySQL 8.0.18,近期在一次服務器重啟后,發現無法正常…

【Agent】API Reference Manual(API 參考手冊)

https://github.com/Intelligent-Internet/CommonGround/blob/main/docs/framework/03-api-reference.md 以下是這份 API Reference Manual(API 參考手冊) 的完整中文翻譯: API 參考手冊 版本:0.1 目錄 概覽 1.1 API 目的 1.2 通信協議與核心概念 HTTP API 2.1 POST /se…

LeetCode Hot 100 全排列

給定一個不含重復數字的數組 nums ,返回其 所有可能的全排列 。你可以 按任意順序 返回答案。示例 1:輸入:nums [1,2,3] 輸出:[[1,2,3],[1,3,2],[2,1,3],[2,3,1],[3,1,2],[3,2,1]]示例 2:輸入:nums [0,1]…

AI大模型如何有效識別和糾正數據中的偏見?

當下,人工智能大模型已成為推動各行業發展的關鍵力量,廣泛應用于自然語言處理、圖像識別、醫療診斷、金融風控等領域,為人們的生活和工作帶來了諸多便利。然而,隨著其應用的不斷深入,數據偏見問題逐漸浮出水面&#xf…

如何通過內網穿透,訪問公司內部服務器?

“凌晨2點,銷售總監王姐在機場候機時突然接到客戶電話——對方要求立即查看產品庫存數據。她慌忙翻出筆記本電腦,卻發現公司內網數據庫沒有公網IP,VPN連接又卡在驗證環節……這樣的場景,是否讓你想起某個手忙腳亂的時刻&#xff1…

12. isaacsim4.2教程-ROS 導航

1. Teleport 示例 ROS 服務的作用: 提供了一種同步、請求-響應的通信方式,用于執行那些需要即時獲取結果或狀態反饋的一次性操作或查詢。 Teleport 服務在 ROS 仿真(尤其是 Gazebo)和某些簡單機器人控制中扮演著瞬移機器人或對象…

DeepSpeed-FastGen:通過 MII 和 DeepSpeed-Inference 實現大語言模型的高吞吐文本生成

溫馨提示: 本篇文章已同步至"AI專題精講" DeepSpeed-FastGen:通過 MII 和 DeepSpeed-Inference 實現大語言模型的高吞吐文本生成 摘要 隨著大語言模型(LLM)被廣泛應用,其部署與擴展變得至關重要&#xff0…

操作系統:操作系統的結構(Structures of Operating System)

目錄 簡單結構(Simple Structure) 整體式結構(Monolithic Structure) 什么是 Kernel(內核)? 層次結構(Layered Structure) 微內核結構(Microkernel&#x…

Python柱狀圖

1.各國GDP柱狀圖2.各國GDP時間線柱狀圖

FastGPT:企業級智能問答系統,讓知識庫觸手可及

在信息爆炸的時代,企業如何高效管理和利用海量知識?傳統搜索和文檔庫已難以滿足需求。FastGPT正成為企業構建智能知識核心的首選。一、FastGPT:不止于問答的智能知識引擎FastGPT 顛覆了傳統知識庫的局限,其核心優勢在于&#xff1…

探索 MyBatis-Plus

引言在當今的 Java 開發領域,數據庫操作是一個至關重要的環節。MyBatis 作為一款優秀的持久層框架,已經被廣泛應用。而 MyBatis-Plus 則是在 MyBatis 基礎上進行增強的工具,它簡化了開發流程,提高了開發效率。本文將詳細介紹 MyBa…

Hive【安裝 01】hive-3.1.2版本安裝配置(含 mysql-connector-java-5.1.47.jar 網盤資源)

我使用的安裝文件是 apache-hive-3.1.2-bin.tar.gz ,以下內容均以此版本進行說明。 以下環境測試安裝成功: openEuler 22.03 (LTS-SP1)系統 MySQL-8.0.40 1.前置條件 MySQL數據庫 我安裝的是 mysql-5.7.28 版本的,安裝方法可參考《Linux環境…

璞致 PZSDR-P101:ZYNQ7100+AD9361 架構軟件無線電平臺,重塑寬頻信號處理范式

璞致電子 PZSDR-P101 軟件無線電平臺以 "異構計算 寬頻射頻 工業級可靠性" 為核心設計理念,基于 Xilinx ZYNQ7100 處理器與 ADI AD9361 射頻芯片構建,為工程師提供從 70MHz 到 6GHz 的全頻段信號處理解決方案。無論是頻譜監測、無線通信原型…

【基礎】go基礎學習筆記

基礎及關鍵字if for switch都支持使用隱形聲明(:)來快速聲明一個變量,無需在上面一行額外聲明,這可以增加代碼簡潔性,但不太符合其他常規語言的寫法,需要習慣一下if for switch都不需要使用(&am…

AI驅動的企業知識管理革新

Baklib:人工智能引領的知識管理平臺Baklib 是領先的 AI 驅動知識管理系統,專為企業打造智能化、模塊化的知識共享平臺。功能覆蓋在線幫助中心、內聯網、CMS 網站、客戶支持系統、視頻中心、活動教學平臺和客戶社區,全面提升組織在知識管理、員…

使用 FFmpeg 實現 RTP 音頻傳輸與播放

🔊 使用 FFmpeg 實現 RTP 音頻傳輸與播放(Ubuntu) 在音視頻開發或遠程通信場景中,RTP(Real-time Transport Protocol) 是一種常用的實時音頻傳輸協議。本文將介紹如何使用 FFmpeg 在 Ubuntu 上實現從一臺主…