麒麟V10 + Docker部署KingbaseES数据库实战教程
文章
- 概述
- 环境准备
- 系统环境说明
- 环境验证
- 查看系统版本
- 查看内核版本
- Docker安装配置
- 更新系统软件包
- 安装Docker
- 启动Docker服务
- 设置Docker开机自启
- 验证Docker安装
- 创建安装目录
- 获取并导入KingbaseES镜像
- 下载KingbaseES Docker镜像
- 上传镜像文件到服务器
- 导入Docker镜像
- 部署KingbaseES容器
- 创建并运行容器
- 验证容器运行状态
- 数据库状态检查与连接测试
- 检查数据库进程状态
- 容器内连接测试
- 外部客户端连接测试
- 使用KStudio连接
- 防火墙配置
- 总结
概述
本教程将详细介绍如何在麒麟V10服务器操作系统上使用Docker容器化技术部署KingbaseES数据库。KingbaseES是一款优秀的国产化数据库管理系统,具备多种兼容模式,能够满足各种企业级应用场景的需求。
环境准备
系统环境说明
- 操作系统:麒麟V10服务器版
- 处理器架构:鲲鹏处理器(ARM64)
- 硬件配置:2核4G内存
- 支持架构:KingbaseES Docker镜像支持X86_64、龙芯、飞腾、鲲鹏等多种处理器架构
环境验证
查看系统版本
cat /etc/kylin-release
查看内核版本
uname -r
Docker安装配置
更新系统软件包
sudo yum update -y
安装Docker
sudo yum install -y docker
启动Docker服务
sudo systemctl start docker
设置Docker开机自启
sudo systemctl enable docker
验证Docker安装
docker --version
创建安装目录
使用root用户权限执行以下命令,为KingbaseES数据库创建持久化存储路径:
# 切换到root用户
sudo su -# 创建KingbaseES相关目录
mkdir -p /opt/kingbase
mkdir -p /opt/kingbase/data# 设置适当的目录权限
chmod -R 755 /opt/kingbase/data# 验证目录创建结果
ls -la /opt/kingbase/
获取并导入KingbaseES镜像
下载KingbaseES Docker镜像
访问人大金仓官方网站下载页面:KingbaseES下载中心
选择适配ARM架构的飞腾_Linux Docker镜像包进行下载。
上传镜像文件到服务器
将下载的镜像文件(例如:KingbaseES_V009R001C010B0004_aarch64_Docker.tar
)上传至服务器的/opt/kingbase
目录。
上传完成后验证文件是否存在:
# 进入安装目录
cd /opt/kingbase# 查看文件列表
ls -al
导入Docker镜像
将镜像文件导入到Docker镜像仓库:
# 导入镜像文件
docker load -i /opt/kingbase/KingbaseES_V009R001C010B0004_aarch64_Docker.tar
验证镜像导入结果:
docker images
部署KingbaseES容器
创建并运行容器
使用以下命令创建并启动KingbaseES数据库容器:
# 确保数据目录存在
mkdir -p /opt/kingbase/data# 创建并运行KingbaseES容器
# 注意:请根据实际的镜像名称和版本号进行调整
docker run -tid --privileged \
-p 4321:54321 \
-v /opt/kingbase/data:/home/kingbase/userdata \
--restart=always \
-e NEED_START=yes \
-e DB_USER=kingbase \
-e DB_PASSWORD=123456 \
-e DB_MODE=oracle \
-e ENCODING=UTF8 \
--name kingbase \
kingbase_v009r001c010b0004_single_arm:v1 \
/usr/sbin/init
参数说明:
-p 4321:54321
:端口映射,将容器内54321端口映射到主机4321端口-v /opt/kingbase/data:/home/kingbase/userdata
:数据卷挂载,实现数据持久化--restart=always
:容器自动重启策略-e DB_USER=kingbase
:设置数据库用户名-e DB_PASSWORD=123456
:设置数据库密码-e DB_MODE=oracle
:设置数据库兼容模式为Oracle-e ENCODING=UTF8
:设置数据库编码为UTF8
验证容器运行状态
docker ps
数据库状态检查与连接测试
检查数据库进程状态
进入容器内部检查KingbaseES数据库服务状态:
# 进入容器
docker exec -it kingbase /bin/bash
# 检查数据库状态
sys_ctl -D /home/kingbase/userdata/data/ status
容器内连接测试
在容器内部测试数据库连接:
ksql -Ukingbase -d test -p54321
外部客户端连接测试
使用KStudio连接
创建新的KingbaseES连接
输入我们的配置后,点击测试连接。
防火墙配置
如果无法从外部连接,需要检查防火墙设置:
# 开放4321端口
sudo firewall-cmd --permanent --add-port=4321/tcp
sudo firewall-cmd --reload# 查看开放的端口
sudo firewall-cmd --list-ports
总结
至此,我们已经在麒麟V10操作系统上成功使用Docker容器化技术部署了KingbaseES金仓数据库。整个部署过程条理清晰,操作简便,充分体现了容器化部署的优势。
感谢各位读者的耐心阅读与学习!希望本教程能够为您在国产化数据库部署实践中提供有价值的技术指导。如果在实际操作过程中遇到任何问题,欢迎交流讨论,共同进步。