KaiwuDBKaiwuDB

KWDB 创作者计划 | 10分钟快速搞定 KWDB 数据库单节点部署

2025-05-18

原文链接:10分钟快速搞定 KWDB 数据库单节点部署 - 墨天轮

作者:jiayou

一、部署概要

KaiwuDB 是浪潮出品的一款面向 AIoT 场景的分布式、多模融合、支持原生 AI 的数据库产品,支持同一实例同时建立时序库和关系库并融合处理多模数据,具备时序数据高效处理能力,具有稳定安全、高可用、易运维等特点。面向工业物联网、数字能源、车联网、智慧产业等领域,KWDB 提供一站式数据存储、管理与分析的基座。长期位居时序数据库排名前二。

KWDB 创作者计划 | 10分钟快速搞定 KWDB 数据库单节点部署(图1)

KWDB 是 KaiwuDB 的社区版,目前已更新到KWDB 2.2.0 版本。KWDB 2.2.0 版本在保持原有特性的基础上,针对时间精度、数据库对象、DML 操作、数据查询及数据库运维等方面进行了优化与增强。

KWDB 支持使用裸机或容器安装包部署单节点或集群。本文演示麒麟 KYLIN V10 SP3环境下单节点裸机部署KWDB 2.2.0。

二、部署前准备

2.1 软硬件环境要求

KWDB 支持在以下服务器操作系统进行安装部署。

操作系统

版本

架构

容器

裸机

Anolis

7

ARM_64

-


7

x86_64

-


8

ARM_64


8

x86_64

CentOS

7

x86_64

-


8

x86_64

-

Debian

V11

ARM_64

-

KylinOS

V10

ARM_64


V10

x86_64

openEuler

22.03

x86_64

-

Ubuntu

V18.04

x86_64


V20.04

ARM_64


V20.04

x86_64


V22.04

ARM_64


V22.04

x86_64


V24.04

ARM_64


V24.04

x86_64

UOS

V20

x86_64


V20

ARM_64

硬件要求:

项目

要求

CPU 和内存

单节点配置建议不低于 4 核 8G。对于数据量大、复杂的工作负载、高并发和高性能场景,建议配置更高的 CPU 和内存资源以确保系统的高效运行。

磁盘

推荐使用 SSD 或者 NVMe 设备,尽量避免使用 NFS、CIFS、CEPH 等共享存储。
磁盘必须能够实现 500 IOPS 和 30 MB/s 处理效率。
KWDB 系统自身启动不会占用过多磁盘容量(低于 1G)。实际所需磁盘大小取决于用户的业务量以及是否开启 KWDB 压缩等可以减少原始数据磁盘占用的功能。用户可以根据实际的业务规模和性能要求规划硬件资源。更多详细信息,参见预估磁盘使用量

文件系统

建议使用 ext4 文件系统。


2.2 软件依赖

安装时,KWDB 会对依赖进行检查。如果缺少依赖会退出安装并提示依赖缺失。

下表列出需要在目标机器安装的依赖:

依赖

版本

说明

OpenSSL

v1.1.1+

N/A

libprotobuf

v3.6.1+

Ubuntu 18.04 版本默认的 libprotobuf 版本低于所需版本,用户需要在部署前提前安装高版本的 libprotobuf 或者使用安装包内提供的高版本 libprotobuf 完成安装。具体操作说明,参见libprotobuf 安装

geos

v3.3.8+

可选依赖

xz-libs

v5.2.0+

N/A

squashfs-tools

any

N/A

libgcc

v7.3.0+

N/A

mount

any

N/A

squashfuse

any

可选依赖


2.3 端口要求

下表列出 KWDB 服务需要映射的端口。在安装部署前,确保目标机器的以下端口没有被占用且没有被防火墙拦截。在安装部署时,用户可以修改 deploy.cfg 文件中的端口配置参数。

端口号

说明

8080

数据库 Web 服务端口

26257

数据库服务端口和对外连接端口


三、部署 KWDB

部署 KWDB 时,系统将对配置文件、运行环境、硬件配置和软件依赖进行检查。如果相应硬件未能满足要求,系统将继续安装,并提示硬件规格不满足要求。如果软件依赖未能满足要求,系统将中止安装,并提供相应的提示信息。

在部署过程中,系统会自动生成相关日志。如果部署时出现错误,用户可以通过查看终端输出或 KWDB 安装目录中 log 目录里的日志文件,获取详细的错误信息。

部署完成后,系统会将 KWDB 封装成系统服务(名称为 KaiwuDB),并生成以下文件:

  • KaiwuDB.service:配置 KWDB 的 CPU 资源占用率。
  • kaiwudb_env:配置 KWDB 启动参数。


3.1 下载安装介质并解压

本文档采用下载二进制最新版 KWDB 2.2.0介质进行安装。

Gitee 社区下载地址:https://gitee.com/kwdb/kwdb

也可以通过官网社区下载:https://www.kaiwudb.com/community/

首先将获取系统环境对应的 DEB 或 RPM 安装包复制到待安装 KWDB 的目标机器上,然后解压缩安装包:

tar -zxvf KWDB-2.2.0-kylinV10_2403-x86_64-rpms.tar.gz

解压后生成的目录包含以下文件:

文件

说明

add_user.sh

安装、启动 KWDB 后,为 KaiwuDB 数据库创建用户。

deploy.cfg

安装部署配置文件,用于配置部署节点的 IP 地址、端口等配置信息。

deploy.sh

安装部署脚本,用于安装、卸载、启动、状态获取、关停和重启等操作。

packages 目录

存放 DEB、RPM、镜像包和 libprotobuf 包。

utils 目录

存放工具类脚本。


3.2 执行安装


3.2.1 修改安装配置文件deploy.cfg

编辑安装包目录下的 deploy.cfg 配置文件,设置安全模式、管理用户、服务端口等信息。默认情况下,deploy.cfg 配置文件中包含集群配置参数。请删除或注释 [cluster] 集群配置项。

vi deploy.cfg

[global] // 全局配置

secure_mode=tls // 是否开启安全模式,默认开启TLS安全模式。开启安全模式后,KaiwuDB 生成 TLS 证书,作为客户端或应用程序连接数据库的凭证。生成的客户端相关证书存放在 /etc/kaiwudb/certs 目录。

management_user= kaiwudb // kaiwudb 的管理用户,默认为 kaiwudb。安装部署后,KaiwuDB 创建相应的管理用户以及和管理用户同名的用户组。

rest_port=8080 // kaiwudb Web 服务端口,默认为 8080。

kaiwudb_port=26257 // kaiwudb 服务端口,默认为 26257

data_root=/var/lib/kaiwuDB // 数据目录,默认为 /var/lib/kaiwuDB

cpu=1 // 指定 KWDB 服务占用当前节点服务器 CPU 资源的比例,默认无限制。取值范围为[0,1]。最大精度为小数点后两位。

encrypto_store=true

[local] // 本地节点配置

node_addr=192.168.126.130

# [cluster] // 集群节点配置,本次单节点配置需要注释掉

# node_addr=your-host-ip, your-host-ip

# ssh_port=22


# ssh_user=admin


3.2.2 为 deploy.sh 脚本添加运行权限。

chmod +x ./deploy.sh


3.2.3 执行单机部署安装命令。

./deploy.sh install --single

注意:需要根据提示设置数据库密码。

执行成功后,控制台输出以下信息:

[INSTALL COMPLETED]: KaiwuDB has been installed successfully! To start KaiwuDB, please execute the command ‘systemctl daemon-reload’.

根据系统提示重新加载 systemd 守护进程的配置文件。

systemctl daemon-reload


3.3 启动 KWDB 节点

./deploy.sh start

执行成功后,控制台输出以下信息:

START COMPLETED: KaiwuDB has started successfuly.


3.4 查看 KWDB 节点状态。

./deploy.sh status

[STATUS COMPLETED]: KaiwuDB is runnning now.

systemctl status kaiwudb

KWDB 创作者计划 | 10分钟快速搞定 KWDB 数据库单节点部署(图2)


3.5 配置 KWDB 开机自启动(可选)

配置 KWDB 开机自启动后,如果系统重启,则自动启动 KWDB。

systemctl enable kaiwudb

Created symlink /etc/systemd/system/multi-user.target.wants/KWDB.service → /etc/systemd/system/KWDB.service.

# 删除KWDB开机自启动

sudo systemctl disable kaiwudb.service

Removed /etc/systemd/system/multi-user.target.wants/KWDB.service.


3.6 创建数据库用户

执行 add_user.sh 脚本创建数据库用户。如果跳过该步骤,系统将默认使用 root 用户,且无需密码访问数据库。

./add_user.sh

Please enter the username: kaiwudb

Please enter the password:

执行成功后,控制台输出以下信息:

[ADD USER COMPLETED]:User creation completed.


四、访问 KWDB

用户可以采取以下任一方式连接 KWDB 服务端并进行 SQL 操作:


4.1 使用 kwbase CLI 工具连接 KWDB

kwbase 是 KWDB 提供的内置命令行工具。用户可以通过 kwbase 以安全模式(适用于生产环境)或非安全模式(适用于测试)连接 KWDB,进行数据库操作和维护。

# 用户连接 KWDB。不指定-u,默认root登录。

#非安全模式

kwbase sql --insecure --host= -u user1

KWDB 创作者计划 | 10分钟快速搞定 KWDB 数据库单节点部署(图3)

#默认TLS安全模式

kwbase sql --host=192.168.126.130 -u kaiwudb --certs-dir=/etc/kaiwudb/certs

KWDB 创作者计划 | 10分钟快速搞定 KWDB 数据库单节点部署(图4)

用户可以在任何 KWDB 客户端使用 \h 命令查看 KWDB 支持的所有 SQL 语句及相关描述。

KWDB 创作者计划 | 10分钟快速搞定 KWDB 数据库单节点部署(图5)

也可以使用关键字查看某一类的 SQL 语句。

比如:使用 SHOW 关键字查看 KWDB 支持的所有 SHOW 语句

\h SHOW;

KWDB 创作者计划 | 10分钟快速搞定 KWDB 数据库单节点部署(图6)


4.2 安装 KaiwuDB 开发者中心连接 KWDB

获取系统环境对应的 DEB 或 RPM 安装包,然后解压缩安装包,调用图形化界面连接数据库。

4.2.1 Linux系统

tar -zxvf KaiwuDB_Developer_Center-2.0.4-linux-x86_64.tar.gz

cd KaiwuDB_Developer_Center-linux-x86_64/

export DISPLAY=192.168.126.1:0.0

./‘KaiwuDB Developer Center’

KWDB 创作者计划 | 10分钟快速搞定 KWDB 数据库单节点部署(图7)

4.2.2 Win系统

解压KaiwuDB_Developer_Center-2.0.4-win-x86_64.zip。

双击 KaiwuDB Developer Center.exe,创建新连接。

KWDB 创作者计划 | 10分钟快速搞定 KWDB 数据库单节点部署(图8)

KWDB 创作者计划 | 10分钟快速搞定 KWDB 数据库单节点部署(图9)


4.3 常用查询

数据库版本查看

select version();

KWDB 创作者计划 | 10分钟快速搞定 KWDB 数据库单节点部署(图10)

查看数据库用户

SHOW USERS 或 SHOW ROLES 语句用于查询数据库的用户信息。

KWDB 创作者计划 | 10分钟快速搞定 KWDB 数据库单节点部署(图11)

查看数据库

show databases;

KWDB 创作者计划 | 10分钟快速搞定 KWDB 数据库单节点部署(图12)

查看已创建数据库的注释信息

SHOW DATABASES WITH COMMENT;

查看数据库的建库语句

SHOW CREATE DATABASE <database_name>;

切换数据库

USE <database_name>;

查看模式

show schemas;

KWDB 创作者计划 | 10分钟快速搞定 KWDB 数据库单节点部署(图13)

查看查询

SHOW QUERIES 语句用于获取 SQL 语句执行的进度信息。

KWDB 创作者计划 | 10分钟快速搞定 KWDB 数据库单节点部署(图14)

查看会话

SHOW SESSIONS 语句用于查看当前正在进行的会话的详细信息,包括:

  • 连接的目标节点
  • 打开会话的客户端的地址
  • 连接时长
  • 会话中正在进行的查询
  • 会话中运行时间最长的查询

查看集群内正在进行的会话。

SHOW ALL CLUSTER SESSIONS;

查看当前节点上正在进行的会话。

SHOW ALL LOCAL SESSIONS;

使用 select 语句通过一个或多个返回字段查看特定会话。

select * FROM [SHOW ALL CLUSTER SESSIONS] WHERE user_name = ‘root’;

取消会话

CANCEL SESSION 语句用于停止长时间运行的会话。

取消单个会话。

– 取消特定ID的会话:

CANCEL SESSION ‘session_id’;

取消多个会话。

CANCEL SESSIONS (select session_id FROM [SHOW SESSIONS] WHERE user_name = ‘kaiwudb’);


五、KWDB 服务启动与停止

  • 使用脚本启停

./deploy.sh stop

KaiwuDB stop successfully.

./deploy.sh start

[START COMPLETED]: KaiwuDB start successfully.

./deploy.sh status

[STATUS COMPLETED]: KaiwuDB is runnning now.

  • 使用系统服务名KaiwuDB启停

systemctl start kaiwudb

systemctl status kaiwudb

KWDB 创作者计划 | 10分钟快速搞定 KWDB 数据库单节点部署(图15)

systemctl stop kaiwudb

[STOP COMPLETED]: KaiwuDB stop successfully.

systemctl restart kaiwudb


六、卸载 KWDB

  • 停止KWDB 服务

systemctl stop kaiwudb

  • 删除与KWDB 服务相关的systemd 配置文件

sudo rm /etc/systemd/system/kaiwudb.service

  • 删除 /etc/kaiwudb 目录及其内容

sudo rm -rf /etc/kaiwudb/

  • 删除 KWDB 的数据目录及其内容 ,默认数据库目录为 /var/lib/kaiwudb

sudo rm -rf /var/lib/kaiwudb

  • 卸载 KWDB 服务及相关的库

sudo apt-get -y remove kaiwudb-server kaiwudb-libcommon libopentelemetry-kaiwudb

  • 删除 KWDB 管理用户及关联文件,管理用户默认为 kaiwudb

sudo userdel -r kaiwudb


、问题整理

7.1 KaiwuDB 已安装无法启动问题

[ERROR] 2025-04-15 14:39:07 KaiwuDB is not runnning now.

[WARN] 2025-04-15 14:39:47 The number of CPU cores does not meet the requirement. KaiwuDB may running failed.

原因:单节点配置建议不低于 4 核 8G。本机配置低于4核配置引起,重新调整启动正常。


7.2 kwbase cli 工具登录问题

kwbase sql --host=192.168.126.130

ERROR: cannot load certificates.

Check your certificate settings, set --certs-dir, or use --insecure for insecure clusters.

problem with CA certificate: not found

Failed running “sql”

原因:安全模式连接需要添加–certs-dir参数

kwbase sql --host=192.168.126.130 --certs-dir=/etc/kaiwudb/certs

root@192.168.126.130:26257/defaultdb>


7.3 KaiwuDB开发者中心linux版本解压之后,可执行文件’KaiwuDB Developer Center’存在空格等问题,建议调整。

KWDB 创作者计划 | 10分钟快速搞定 KWDB 数据库单节点部署(图16)

八、总结

KaiwuDB 2.2.0单节点部署非常简单,根据官方网站提供文档可以快速上手。单节点高可用方案以及集群方案,有时间在探索。KaiwuDB论坛已上线,感兴趣的伙伴可以登录学习https://www.kaiwudb.com/blog/632.html

KWDB是KaiwuDB的社区版,再下载部署过程中存在包,路径等名称命名混淆的问题。建议以后可以命名更规范。

KaiwuDB也提供了认证培训课程,感兴趣的朋友可以登录如下网址学习:https://www.kaiwudb.com/learning/




体验全新的分布式多模数据库解决方案

企业版 社区版

KaiwuDB 是浪潮控股的数据库企业,面向工业物联网、数字能源、车联网、智慧产业等行业领域,提供稳定安全、高性能、易运维的创新数据软件与服务。

关注官方微信

友情链接:浪潮  

© 上海沄熹科技有限公司 Shanghai Yunxi Technology Co., Ltd.    沪ICP备2023002175号-1    网站服务协议   |   隐私政策
400-624-5688-7
服务与支持
marketing@kaiwudb.org.cn