KingbaseES Docker速查表

在 KingbaseES(人大金仓)的 Docker 容器内,管理和操作数据库主要通过 ksql 命令行客户端和 sys_ctl 控制工具来完成。

下面是核心操作的快速参考:

操作 命令 说明
进入容器 docker exec -it <容器名或ID> /bin/bash 进入容器内部。
连接数据库 ksql -U <用户名> -d <数据库名> -p 54321 -U指定用户,-d指定数据库。默认用户是system,默认数据库是test。
免密连接 ksql 仅输入命令,然后按提示输入密码即可。
执行SQL文件 \i /path/to/your/file.sql 在ksql交互界面中,执行指定路径的SQL文件。
查看数据库状态 sys_ctl -D /home/kingbase/userdata/data/ status 检查Kingbase数据库进程是否正常运行。
重新加载配置 sys_ctl reload -D /home/kingbase/userdata/data/ 修改kingbase.conf等配置文件后,使其生效。
退出ksql \q 退出ksql命令行界面,返回容器的shell。

📌 核心命令详解

1. 进入容器

首先,你需要进入Kingbase容器的bash环境,才能执行后续的所有命令。

复制代码
# 请将 <容器名或ID> 替换为你实际的容器名(如 kingbase)或容器ID(如 bb0a406b3e7a)
docker exec -it <容器名或ID> /bin/bash

# 成功进入后,命令行提示符通常会变成类似 [root@xxx /]# 的形式
2. 连接数据库:ksql

ksql 是KingbaseES自带的命令行客户端,功能类似PostgreSQL的psql。进入容器后,使用ksql命令连接数据库。

指定参数连接(推荐)

此方式最为明确。连接成功后,提示符会变为 <数据库名>=#。

复制代码
# 语法:ksql -U 用户名 -d 数据库名 -p 端口号
ksql -U system -d test -p 54321

免密快速连接

如果你的环境已经配置好(通常是默认的system用户),直接输入ksql命令并回车,它会自动尝试以当前Linux用户(通常是kingbase)免密登录test数据库。

复制代码
ksql
3. 执行SQL文件:\i

当你需要执行一个已写好的.sql脚本文件时,可以先连接数据库,再使用\i命令。

复制代码
-- 1. 先连接到目标数据库
ksql -U system -d test -p 54321

-- 2. 在ksql提示符下,执行脚本文件
\i /home/kingbase/userdata/defence_cloud-kb.sql
4. 查看和管理数据库

在容器内,你可以使用sys_ctl工具来管理数据库进程。

查看数据库状态

复制代码
# 切换到 kingbase 用户(如果需要),然后执行状态查看命令
su - kingbase
sys_ctl -D /home/kingbase/userdata/data/ status

输出示例:

复制代码
sys_ctl: server is running (PID: 76)

这表示数据库正在运行。

重新加载配置

当修改了数据库的配置文件(如 kingbase.conf)后,需要让配置生效,但又不想重启整个服务,可以使用reload命令。

复制代码
# 执行重新加载命令
/home/kingbase/install/kingbase/bin/sys_ctl reload -D /home/kingbase/userdata/data/

💡 常见问题与路径速查

  • 数据库默认目录 : /home/kingbase/userdata/data/
  • 默认账户/密码 : system / 123456 (或 12345678ab)
  • ksql连接不上 : 确认容器已用-p 54321:54321映射端口,并且数据库服务已启动
  • 提示权限不足 : 如果遇到权限错误,可以尝试切换到kingbase用户再执行命令:su - kingbase
相关推荐
不会就选b6 小时前
Linux之TCP理论<1>
linux·运维·服务器
倔强的石头1067 小时前
应用账号最小权限实践:读写账号、报表账号、运维账号分层
java·运维·开发语言
Android系统攻城狮8 小时前
Linux Gstreamer深度解析之gst_audio_encoder_get_frame_samples_min调用流程与实战(六十)
linux·运维·服务器·音视频·gstreamer音视频·音视频进阶·gstreamer音视频进阶
_upupup9 小时前
Linux中的自动化构建——make/Makefile
linux·运维·自动化
还卿一钵无情泪9 小时前
Docker 部署Unsloth 绕开环境配置难题
运维·人工智能·docker·ai·容器·nlp·干货
打工仔折腾 AI10 小时前
Docker镜像分层与卷挂载到底怎么工作:一次文件系统层面的实测分析
运维·人工智能·后端·python·docker·容器·性能优化
大猫会长11 小时前
调用codebuddy集成的supabase授权白屏解决方法
linux·运维·服务器
夜之眷属12 小时前
服务器被挖矿病毒入侵的排查与清理实录
运维·服务器
极客先躯12 小时前
高级java每日一道面试题-2026年01月20日-实战篇[Docker]-如何实现镜像的跨区域复制?
java·运维·docker·容器·架构图
韩振方12 小时前
为什么服务显示占了 8G,实际内存却没那么多?
运维