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

时间:2024-06-02 08:19:36

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

 

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

 

1,拉取镜像

(1)首先执行如下命令将镜像下载到本地:

1

docker pull ibmcom/db2


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

1

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 是宿主机的目录

1

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 命令确认容器启动成功。

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

 

3,执行命令

(1)首先执行如下命令进入 DB2 实例的命令环境中:

1

docker exec -it db2 bash


(2)执行如下命令切换到实例用户 db2inst1:

注意:一定要写中间的那个横条(-)。

1

su - db2inst1


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

1

db2pd -

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

 

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

1

db2level

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

 

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

1

db2 list db directory

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

 

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

1

db2 connect to testdb


(7)然后执行如下命令创建一个名为 TEST 的表:

注意:db2 命令后面的sql语句需要用引号括起来,否中会报 -bash: syntax error near unexpected token `(' 错误。

1

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 表创建成功:

1

db2 list tables

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


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

1

db2sampl


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

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

 

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