返回 导航

Docker / K8s

hangge.com

Docker - 通过容器安装部署DB2数据库教程

作者:hangge | 2020-03-25 08:10
    我之前写过文件介绍如何使用 DB2 官方的安装程序进行 DB2 数据库的安装(点击查看)。本文介绍另一种方式:通过 Docker 来快速搭建 DB2 数据库环境,使用这种方式可以免去很多安装配置上的麻烦,方便快捷。

1,拉取镜像

(1)首先执行如下命令将镜像下载到本地:
docker pull ibmcom/db2

(2)由于镜像比较大(2.96G),执行如下命令删除所有 dangling 数据卷(即无用的 Volume),避免空间不足:
docker volume rm $(docker volume ls -qf dangling=true)

2,启动容器 

(1)执行如下命令实例化 DB2 服务:
参数说明:
  • -d: 表示在后台启动容器;
  • -p 50000:50000: 容器内部的 50000 端口映射主机的 50000 端口;
  • --name db2:将容器命名为 db2
  • --privileged=true:使得容器内的 root 拥有真正的 root 权限。
  • -e DB2INST1_PASSWORD=hangge-1234:设置内置实例用户 db2inst1 的密码为 hangge-1234
  • -e DBNAME=testdb:容器启动时自动创建一个名为 testdb 的数据库,如果不指定该参数则不创建数据库
  • -e LICENSE=accept:接受协议
  • -v /usr/local/db2:/database:挂载目录,其中 /usr/local/db2 是宿主机的目录
docker run -d -p 50000:50000 --name db2 --privileged=true -e DB2INST1_PASSWORD=hangge-1234 -e DBNAME=testdb -e LICENSE=accept -v /usr/local/db2:/database ibmcom/db2

(2)执行 docker ps 命令确认容器启动成功。

3,执行命令

(1)首先执行如下命令进入 DB2 实例的命令环境中:
docker exec -it db2 bash

(2)执行如下命令切换到实例用户 db2inst1
注意:一定要写中间的那个横条(-)。
su - db2inst1

(3)执行如下命令可以查看运行状态:
db2pd -

(4)执行如下命令可以查看数据库和补丁版本:
db2level

(5)执行如下命令可以查看已经创建的数据库,可以发现根据启动时的配置参数,目前创建一个 testdb 数据库:
db2 list db directory

(6)执行如下命令连接 testdb 数据库:
db2 connect to testdb

(7)然后执行如下命令创建一个名为 TEST 的表:
注意db2 命令后面的sql语句需要用引号括起来,否中会报 -bash: syntax error near unexpected token `(' 错误。
db2 "create table TEST(ID BIGINT NOT NULL GENERATED BY DEFAULT AS IDENTITY (START WITH 1,INCREMENT BY 1),USER_NAME VARCHAR(20),USER_AGES INT)"

(8)执行如下命令可以查看所以用户表,可以发现 TEST 表创建成功:
db2 list tables

(9)我们还可以执行如下命令再创建一个 SAMPLE 数据库(样例数据库)
db2sampl

(10)接着再次执行 db2 list dbdirectory 命令可以看到数据库创建成功:

(11)最后执行 exit 即可退出容器,返回到宿主机。

4,连接测试

(1)我们使用客户端工具 DataGrip 连接 testdb 数据库,可以发现连接成功:

(2)当然连接后来创建的 SAMPLE 数据库,也是可以连接成功:
评论

全部评论(0)

回到顶部