版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/lazycheerup/article/details/85125172
第一步:下载镜像
docker pull ibmcom/db2express-c:latest
备注:docker images -a 可以查看已安装镜像;
第二步:启动镜像
docker run -d --name db2 -p 50000:50000 -e DB2INST1_PASSWORD=[数据库密码] -e LICENSE=accept ibmcom/db2express-c:latest db2start
参数解释:
1.-p 50000:50000 允许远程的客户端可以从50000 端口连接到数据库实例(端口映射,格式为:主机(宿主)端口:容器端口).
2.-d: 后台运行容器,并返回容器ID;
4.--name="db2 ": 为容器指定一个名称;
5.通过指定 -e DB2INST1_PASSWORD=[数据库密码] 参数, 你可以为缺省的Db2实例用户db2inst1设置密码.
6.通过指定-e LICENSE=accept参数, 表示你接受了使用Db2软件的许可证协议.
[root@izwz9id0dphnuy2q3l6rdoz ~]# docker run -d --name db2 -p 50000:50000 -e DB2INST1_PASSWORD=wyPwd -e LICENSE=accept ibmcom/db2express-c:latest db2start
8d9b3b2a34f45f76eeace05ab158da68a721dbd2fdf4ac689f0aec0a2c0b4d1e
[root@izwz9id0dphnuy2q3l6rdoz ~]# docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
8d9b3b2a34f4 ibmcom/db2express-c:latest "/entrypoint.sh db..." 4 seconds ago Up 3 seconds 22/tcp, 0.0.0.0:50000->50000/tcp db2
[root@izwz9id0dphnuy2q3l6rdoz ~]# netstat -lnp | grep 50000
tcp6 0 0 :::50000 :::* LISTEN 16178/docker-proxy-
[root@izwz9id0dphnuy2q3l6rdoz ~]# docker exec -it db2 /bin/bash
[root@8d9b3b2a34f4 /]# su db2inst1
[db2inst1@8d9b3b2a34f4 /]$ db2 create db db2Tansun using codeset UTF-8 territory CN
SQL1001N "db2Tansun" is not a valid database name. SQLSTATE=2E000
[db2inst1@8d9b3b2a34f4 /]$ whoami
db2inst1
[db2inst1@8d9b3b2a34f4 /]$ db2 create db test111 using codeset UTF-8 territory CN
DB20000I The CREATE DATABASE command completed successfully.
第三步:进入镜像 并切换用户
docker exec -it db2 /bin/bash
备注:
1.docker exec :在运行的容器中执行命令
2.-t :分配一个伪终端
3.db2 是容器的名称
切换用户:su db2inst1
第四步:创建数据库
db2 create database AUDIT using codeset GBK territory cn
[db2inst1@8d9b3b2a34f4 /]$ db2start
SQL1026N The database manager is already active.
[db2inst1@8d9b3b2a34f4 /]$ db2 create database AUDIT using codeset GBK territory cn
DB20000I The CREATE DATABASE command completed successfully.
[db2inst1@8d9b3b2a34f4 /]$ db2 connect to AUDIT
Database Connection Information
Database server = DB2/LINUXX8664 10.5.5
SQL authorization ID = DB2INST1
Local database alias = AUDIT