Kingbase下载、安装和使用详解

人大金仓 KingbaseES(KES)是信创领域适配度极高的国产数据库,其使用逻辑与 PostgreSQL/Oracle 高度相似。结合你所在的郑州(政务、国企项目多),以下从下载到实战的完整指南,重点覆盖 Linux(生产环境)和 Windows(开发测试)两种场景。

一、下载与授权准备

KingbaseES 属于商业软件,获取途径与开源数据库不同。

1. 获取安装包

  • 官网渠道 :访问 kingbase.com.cn下载中心。通常需注册企业账号并实名认证。最新版本为 V9 / V10 系列,V8 R6 是目前最稳定的长期支持版。

  • 信创生态 :如果你是郑州的政务或国企项目,通常由集成商或人大金仓河南本地技术支持直接提供适配好麒麟/统信OS的 ISO 镜像,无需自行下载。

2. License 授权

  • 正式项目 :必须获取 license.datlicense.lic文件。安装前需将其放在安装包同级目录,否则只能试用 30 天或功能受限。

  • 学习测试:可申请官网的"开发版"或"社区版"(如有)。

二、Linux 环境安装(生产推荐)

这是信创项目(麒麟、统信 UOS、CentOS)的主流部署方式。

1. 环境预检

  • 硬件:建议 4 核 CPU、8GB 内存、50GB 磁盘(国产飞腾/鲲鹏芯片需对应 ARM 版安装包)。

  • 用户严禁使用 root 。需创建专用用户(如 kingbase)。

    复制代码
    useradd kingbase
    passwd kingbase
  • 依赖 :检查 glibc版本,确保 libreadline等基础库存在。

2. 挂载与安装

假设你拿到的是 KingbaseES_V008R006C007B0024_Lin64_install.iso

复制代码
# 挂载镜像
mkdir -p /mnt/kingbase
mount -o loop KingbaseES_V008R006C007B0024_Lin64_install.iso /mnt/kingbase
cd /mnt/kingbase

# 执行图形化安装(需桌面环境)
./setup.sh
# 或命令行静默安装(生产环境无桌面时)
./setup.sh -i console

注意 :若使用命令行安装,需提前准备好响应文件(silent_install.xml)或按提示输入安装路径、数据目录(如 /opt/Kingbase/ES/V8)、端口(默认 54321)和 system用户密码。

3. 初始化与启动

安装程序通常会自动初始化一个实例。若需手动:

复制代码
# 切换到安装目录
cd /opt/Kingbase/ES/V8/Server/bin

# 初始化数据目录(-D 指定数据位置)
./initdb -D /data/kingbase -U system -W

# 启动服务
./sys_ctl -D /data/kingbase start

三、Windows 环境安装(开发测试)

Windows 版主要用于本地功能验证,非生产环境首选。

  1. 解压/挂载 :获取 KingbaseES_Setup.exelicense.lic,放在同一文件夹。

  2. 运行安装 :双击 exe,选择"典型安装"。关键步骤

    • 设置 system用户的密码(需符合复杂度要求)。

    • 修改端口:默认 54321(避免与 PostgreSQL 的 5432 冲突)。

    • 字符集:务必选择 UTF8

  3. 验证 :安装完成后,服务自动启动。在开始菜单找到 Kingbase -> 命令行工具,输入 ksql -U system -d test登录。

四、连接与基本使用

1. 命令行连接 (ksql)

Kingbase 的 CLI 工具 ksql是管理核心。

复制代码
# 本地连接(默认端口 54321)
ksql -U system -d kingbase -p 54321

# 远程连接(从另一台机器)
ksql -h 192.168.1.100 -U system -d kingbase -p 54321

连接后执行 SELECT version();验证。

2. 图形化工具 (KStudio)

  • 位置 :安装目录下的 ./tools/KStudio/bin/KStudio.exe(Windows)或 Linux 桌面启动。

  • 配置 :新建连接,输入主机 IP(本地填 127.0.0.1)、端口 54321、用户名 system和密码。

3. 基础 SQL 操作

Kingbase 语法高度兼容 Oracle/PostgreSQL。

复制代码
-- 创建数据库(注意:Kingbase 数据库名默认小写)
CREATE DATABASE mydb;

-- 切换数据库(在 ksql 中)
\c mydb

-- 建表(兼容 Oracle 的 NUMBER、VARCHAR2)
CREATE TABLE users (
    id NUMBER PRIMARY KEY,
    name VARCHAR2(50),
    create_time DATE DEFAULT SYSDATE
);

-- 插入数据
INSERT INTO users VALUES (1, '张三');

-- 查询
SELECT * FROM users;

五、本地部署避坑指南

  1. 国产 OS 适配 :在麒麟/统信环境下,若安装报错"依赖缺失",通常不是缺库,而是安全策略拦截 。需临时关闭安全模式或使用 yum/apt安装缺失的底层库(如 libnsl)。

  2. 端口冲突:国产化环境中常同时部署达梦(5236)、金仓(54321)、神通等,规划时需明确端口,避免冲突。

  3. 迁移痛点 :若从 Oracle 迁移,存储过程、序列、触发器需使用金仓提供的 KDTS 迁移工具 进行校验,手动调整 SYSDATESYSTIMESTAMP等细节。

如果你有具体的项目背景(如"某局OA系统迁移"),我可以提供更针对性的参数配置建议。

相关推荐
蓝田~10 小时前
MySQL慢查询怎么优化?B+Tree索引原理+MVCC读不阻塞写+EXPLAIN执行计划,从5秒到0.05秒
数据库·mysql
sunxunyong10 小时前
doris用户资源组配置
数据库
Cloud云卷云舒10 小时前
云卷云舒:HaishanDB的AI原生能力主要应用场景
数据库·人工智能·ai-native·haishandb·移动云长期记忆
时间的拾荒人10 小时前
MySQL 视图详解
android·数据库·mysql
qq_3660862211 小时前
sql 查询中关于 null 值判断的问题
数据库·sql
测试修炼手册11 小时前
[测试技术] JUnit 6 入门与实战:断言、参数化与 Mockito
数据库·junit·sqlserver
吴声子夜歌11 小时前
Redis 3.x——集群故障转移
java·数据库·redis·集群
名不经传的养虾人11 小时前
从0到1:企业级AI项目迭代日记 Vol.71|系统显示正常,但实际上什么都没发生
数据库·人工智能·ai编程·ai工作流·企业ai
尽兴-11 小时前
企业数据库选型与演进:Oracle、达梦、MySQL 与分库分表实践
数据库·mysql·oracle·分库分表
空中湖12 小时前
Spring AI Function Calling 完全指南:让 AI 查数据库、调 API、发通知
数据库·人工智能·spring