Docker安装db2

发布时间 2023-10-16 18:13:34作者: 赋青诗

docker安装db2数据库

查询db2安装的镜像

docker search db2

NAME                             DESCRIPTION                                     STARS     OFFICIAL   AUTOMATED
ibmcom/db2                       Db2 - The AI Database                           146                  
angoca/db2-instance              OLD - 2. Prepares the environment to create …   18                   [OK]
ibmoms/db2express-c              DB2 Express-C                                   9                    
ibmcom/db2console                Data Management Console docker image            6                    
zongqiang/db2v10.5expc           DB2 v10.5.0.4 Express-C                         5                    
ibmcom/db2-amd64                 Db2 - The AI Database                           4                    
taskana/db2                      Preconfigured db2 database(s) for taskana       2                    
henriquemoreno/db2express-c      IBM db2express-c                                2                    
db260179/guacamole-combined      Dockerfile for Guacamole with embedded Maria…   2                    
ibmcom/db2u-operator                                                             1                    
rodrigotsuru/db2-docker          DB2 Docker build                                1                    [OK]
ibmcom/db2u.tools                                                                1                    
redislabs/redis-connect-db2      Redis Connect DB2 Connector for Initial Load…   0                    
ibmoms/db2                                                                       0                    
ibmcom/db2u.instdb                                                               0                    
ibmcom/db2u.auxiliary.auth                                                       0                    
db2eventstore/icp-dev-es                                                         0                    
db2eventstore/icp-dev-nginx                                                      0                    
db2eventstore/icp-dev-dsx-core                                                   0                    
db2dei/oracle-xe                 Oracle Express for databases course of DEI-U…   0                    
db2eventstore/icp-dev-spawner                                                    0                    
db2eventstore/icp-dev-spark                                                      0                    
db2eventstore/icp-dev-jupyter                                                    0                    
butler54/db2-update              DB2 update test                                 0                    
hmlandregistry/db2-cgroupaware                                                   0                    

拉取镜像到本地

docker pull ibmcom/db2express-c

> docker pull ibmcom/db2express-c                                                              
Using default tag: latest
latest: Pulling from ibmcom/db2express-c
a3ed95caeb02: Pull complete 
aeb4552c46f2: Pull complete 
67f42aa337c8: Pull complete 
36add9e32b7b: Pull complete 
cca79fe4efc9: Pull complete 
47257c26990b: Pull complete 
ffaad03725df: Pull complete 
12bf772a460f: Pull complete 
d7696ccb610d: Pull complete 
6cf81245c65d: Pull complete 
5dab63ce98e0: Pull complete 
91dd2d768d97: Pull complete 
e3aca141cf3e: Pull complete 
Digest: sha256:6217d60b20b58e08e5189f467cfb9a08f3472cf6c3a5e5d5d91900791c709a86
Status: Downloaded newer image for ibmcom/db2express-c:latest
docker.io/ibmcom/db2express-c:latest

查询下载镜像

docker images | grep -i db2

> docker images | grep -i db2
ibmcom/db2express-c   latest    7aa154d9b73c   8 years ago     1.71GB

修改镜像名称并删除原来的镜像

docker tag 7aa154d9b73c db2

docker rmi ibmcom/db2express-c

> docker tag 7aa154d9b73c db2                                                                                                                                                  16:00:39
[16:02:24] xiaobaopeng@fsdfs /Users/xiaobaopeng  
> docker images | grep -i db2 
ibmcom/db2express-c   latest    7aa154d9b73c   8 years ago     1.71GB
db2                   latest    7aa154d9b73c   8 years ago     1.71GB


> docker rmi ibmcom/db2express-c   
Untagged: ibmcom/db2express-c:latest
Untagged: ibmcom/db2express-c@sha256:6217d60b20b58e08e5189f467cfb9a08f3472cf6c3a5e5d5d91900791c709a86

> docker images | grep -i db2                                                                      16:02:42
db2          latest    7aa154d9b73c   8 years ago     1.71GB

启动DB2容器

docker run -d --name db2 -p 50000:50000 -e DB2INST1_PASSWORD=rootpwd -e LICENSE=accept db2:latest db2start

> docker run -d --name db2 -p 50000:50000 -e DB2INST1_PASSWORD=rootpwd -e LICENSE=accept db2:latest db2start
f5d6341be8ff3e0b2089266002e06ad964c1cb08c9b6e76562c30d29906f5f47
  • (1).-p 50000:50000 允许远程的客户端可以从50000 端口连接到数据库实例(端口映射,格式为:主机(宿主)端口:容器端口).

  • (2).-d: 后台运行容器,并返回容器ID

  • (3).--name db2: 为容器指定一个名称

  • (4).通过指定 -e DB2INST1_PASSWORD=[数据库密码] 参数(注:此处设置的密码为rootpwd), 你可以为缺省的Db2实例用户db2inst1设置密码

  • (5).通过指定-e LICENSE=accept参数, 表示你接受了使用Db2软件的许可证协议

进入镜像 并切换用户

docker exec -it db2 /bin/bash

  • (1).docker exec :在运行的容器中执行命令
  • (2).-t :分配一个伪终端
  • (3).db2 是容器的名称

切换用户

> docker exec -it db2 /bin/bash    

[root@f5d6341be8ff /]# su db2inst1
[db2inst1@f5d6341be8ff /]$ 

创建数据库

db2 create db umpdb using codeset UTF-8 territory CN

[db2inst1@f5d6341be8ff /]$ db2 create db umpdb using umpdb UTF-8 territory CN
SQL0104N  An unexpected token "umpdb" was found following "USING".  Expected 
tokens may include:  "CODESET".  SQLSTATE=42601

连接到数据库

db2 connect to umpdb

[db2inst1@f5d6341be8ff /]$ db2 connect to umpdb

   Database Connection Information

 Database server        = DB2/LINUXX8664 10.5.5
 SQL authorization ID   = DB2INST1
 Local database alias   = UMPDB

使用连接工具DBeaver连接db2

用户名: db2inst1
数据库名: umpdb
密码:rootpwd
端口:50000

常用的DB2命令

db2 create db [dbname] #创建数据库
db2 list db directory #列出所有数据库
db2 list active databases #列出所有激活的数据库
db2 get db cfg #列出所有数据库配置
db2licm -l #查看DB2数据库版本