vastbase支持docker部署

概要:本文将提供vastbase数据库如何在docker中进行部署,以及vastvase数据库升级后,在docker中如何导出导入数据库的方法。

适用环境:如果和下面信息对应不上,就需要重新做docker镜像。

镜像名称 os cpu 数据库版本
saopack/vastbase_g100:2.2.10.9104_amd centos7.6以上的操作系统 X86_64 Vastbase G100 V2.2.10(9662)

1、官网查找对应的镜像:

https://hub.docker.com/r/saopack/vastbase_g100/tags

image.png

2、docker下安装数据库:

2.1、docker pull一下镜像:

docker pull saopack/vastbase_g100:2.2.10.9104_amd
a02deec736a3e487e21ad88d46bffc5.jpg

2.2、查看标签:

docker images

2.3、创建数据库用户:

useradd vastbase
passwd vastbase

2.4、创建数据库目录并授权:

mkdir  -p /data/vb_data
chown -R vastbase:vastbase /data

2.5、创建license目录(license不能和上面的数据库目录公用,会导致数据库容器无法正常启动)

注意:需提前准备 license 并改名为 license ,授权vastbase用户,并放在/vbdata/license/目录下(在启动命令中指定)。

mkdir  -p /vbdata/license

2.6、上传license并授权

license放在/vbdata/license目录下
cd /vbdata/license
mv Vastbase_license_20221010_20230401  license
chown -R vastbase:vastbase /vbdata

2.7、启动容器:

初始化容器格式:

docker run -d --privileged=true -d -v {your_license_path}:/usr/local/vastbase/lic -v {your_data_path}:/home/vastbase/data -e VB_PASSWORD=Vastbase@123 -p   192.168.2.151:5432:5432 saopack/vastbase_g100:2.2.10.9104_amd

参数介绍:

参数项 注释 说明
宿主机ip地址及端口 192.168.2.151:5432 如果要变数据库端口,就在这个地方改
data宿主机挂载目录 {your_data_path} 数据库目录
license宿主机挂载目录 {your_license_path} license目录,不能放在数据库目录中
-p 可以将容器内的数据库连接端口映射到宿主机对应的端口通过-p选项
-v 将宿主机的目录映射到容器中的目录通过-v :-------------:

初始化容器命令

docker run -d --privileged=true -v /vbdata/license/:/usr/local/vastbase/lic -v /data/vb_data:/home/vastbase/data -e VB_PASSWORD=Vastbase@123 -p  192.168.2.151:5432:5432 saopack/vastbase_g100:2.2.10.9104_amd

2.8、看容器数据库启动日志:

docker ps -a
docker logs d3a43a15b0a0 -f
image.png

2.9、如何登录vastbase用户并操作数据库:

docker ps -a
docker exec -it 5274ae5f5d6f bash
image.png

2.10、数据库运行成功后信息验证:

image.png

备注:可以发现有5432这个端口,代表数据库端口运行起来。

3、docker数据库升级:

3.1、先在容器中导出数据库(此时的数据库是旧版本数据库):

先进入容器,在vastbase用户内执行:
vb_dump -p 5432 testdb -C -Ft -f  /tmp/testdb.dmp

3.2、把导出的文件传到服务器的/tmp目录下

docker cp f8108bad5a18:/tmp/testdb.dmp  /tmp/
cd /tmp
chown -R vastbase:vastbase testdb.dmp

3.3、把导出的文件从服务器的/tmp目录下传到镜像的/tmp下:

docker cp /tmp/testdb.dmp d3a43a15b0a0:/tmp/

3.4、导入数据库(此时的数据库是升级后的库):

先进入容器,在vastbase用户内执行:
vb_restore  -p 5432 -d testdb -v /tmp/testdb.dmp
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容