Kingbase之导入docker镜像

本文详细介绍了如何在Linux系统中通过Docker命令行安装KingbaseES,包括镜像导入、镜像运行、设置环境变量、数据持久化、数据库操作以及容器管理和访问。
摘要由CSDN通过智能技术生成

导入镜像 

本节将讲解在Linux系统中使用docker命令行安装KingbaseES。

  1. 打开新终端,上传tar包;

  2. 切换到root用户;

  3. 执行如下命令:

导入tar包到本机docker镜像仓库中

docker load -i kingbase.tar

查看导入的镜像

docker images

../../_images/install-docker-image7.png

1. 运行镜像 

1.1 启动命令 

docker run -idt --privileged -p ${hostport}:${containerport} –v ${hostpath}:${containerpath} --name ${sub_container} ${image} /usr/sbin/init

../../_images/image214.png

1.2 使用docker logs 查看容器脚本执行日志 

../../_images/image413.png

../../_images/image513.png

../../_images/image613.png

1.3 使用-p 选项绑定端口 

../../_images/image713.png

图 4.2.46 将容器内部端口绑定到宿主机端口4321上,在宿主机内连接该数据库 

宿主机可成功访问对应数据库

../../_images/image812.png

1.4 使用-v 选项挂载目录 

使用-v 可以将容器内数据目录(/home/kingbase/userdata/)挂载到宿主机 进行持久化,-v 冒号左边是用户可配置的,代表用户可以设置的宿主机挂载目录(用户无需自己创建,挂载后脚本会自动修改好目录的权限),右边按照文档描述进行配置

docker run -tid --name kingbase -v /mnt/kingbase/data:/home/kingbase/userdata/ -p 4321:54321 kingbase:v1 /bin/bash

查看挂载是否生效

docker inspect -f ‘{{.Mounts}}’ kingbase

../../_images/image912.png

持久化数据挂载成功

进入容器

docker exec –it kingbase /bin/bash

../../_images/image1012.png

2 设置环境变量 

docker run -tid \

--name kingbase \

-e ENABLE_CI=${enable_ci} \

-e NEED_START=${need_start} \

-e DB_USER=${username} \

-e DB_PASSWORD=${passwd} \

-e DB_MODE=${dbmode} \

kingbase:v1 \

/bin/bash

数据库默认用户名:system

数据库默认密码:123456

数据库默认data目录:/home/kingbase/userdata/data

设置的KINGBASE_DATA路径是, 需要设置在 -v 选项冒号右侧的容器内的挂载路径下,不然数据目录无法持久化。

2.1. DB_USER: 数据库用户 

../../_images/image1113.png

2.2. DB_PASSWORD: 数据库初始密码 

../../_images/image1212.png

容器外访问,输入更改后的密码,访问成功

../../_images/image1311.png

2.3. DB_MODE: 数据库模式 

数据库模式: 支持oracle/pg/mysql

../../_images/image12-1.png

2.4. NEED_START: 进入容器后是否启动数据库 

yes(默认 启动数据库)/ no(不启动数据库)

2.5. ENABLE_CI: 是否需要配置大小写敏感 

yes(默认 大小写不敏感)/no 大小写敏感

2.6. License.dat持久化及更换license 

容器启动后对应的license.dat文件会复制到etc持久化目录,并建立软连接

../../_images/image1512.png

../../_images/image1612.png

更新license直接替换持久化etc目录下的license.dat文件,进入容器后,并输入命令修改成正确权限。

chown kingbase:kingbase /home/kingbase/userdata/etc/license.dat
chmod 755 /home/kingbase/userdata/etc/license.dat

2.7. 配置文件持久化及修改配置文件后生效 

启动容器后,相关配置文件会随着data目录一起持久化,包括kingbase.conf、 kingbase_auto.conf、sys_hba.conf等配置文件.在持久化目录中修改配置文件后,使用如下命令使修改生效:

/home/kingbase/install/kingbase/bin/sys_ctl reload -D  /home/kingbase/userdata/data/

../../_images/image1712.png

3. 数据库基本操作 

3.1. 启动即运行 

容器启动后,数据库即开始运行(数据库配置正确/或者处于初始态)

../../_images/image1812.png

3.2. ksql访问访问数据库(密码/免密) 

使用ksql输入密码进行访问(默认kingbase用户)

#(进入容器linux默认用户kingbase) : ksql -Usystem -d test -p54321

../../_images/image1912.png

图 4.4.3 直接使用ksql免密访问 

#(进入容器linux默认用户kingbase) : ksql

../../_images/image208.png

3.3. 容器外访问数据库(需要密码) 

宿主机远程访问需要加-h 及改变映射端口

#(linux 非root用户 ) : ./kingbase/bin/ksql -Ukingbase -d test -p 4321 -h ${container_host_ip}

../../_images/image215.png

3.4. 数据库启动和停止 

#(进入容器linux默认用户kingbase) : sys_ctl -D /home/kingbase/xxxx start/stop

../../_images/image223.png

  • 17
    点赞
  • 26
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值