概况:以centos:7.2.1511镜像为基础镜像,使用docker commit方式进行构建 步骤:
docker run -it --privileged centos:7.2.1511 /bin/bash 2.拷贝db2安装包进镜像中 docker cp v9.7_linuxx64_server.tar.gz 容器id:/usr/local 3.镜像内操作
tar -xzvf v9.7_linuxx64_server.tar.gz
cd server
./db2prereqcheck
* WARNING: * The 32 bit library file libstdc++.so.6 is not found on the system. * 32-bit applications may be affected. * ERROR: * The required library file libaio.so.1 is not found on the system. * Check the following web site for the up-to-date system requirements * of IBM DB2 9.7 *
http://www.ibm.com/software/data/db2/udb/sysreqs.html *
http://www.software.ibm.com/data/db2/linux/validate
* yum install -y libstdc++ * yum install -y libstdc++.so.6 * yum install -y libaio
./db2_install 要选择另一个目录用于安装吗?[yes/no] --输入no默认安装opt下,选择yes自己输入安装目录 指定下列其中一个关键字以安装 DB2 产品 --输入ESE ESE 正在初始化 DB2 安装。……
Task #41 start Description: Starting DB2 Fault Monitor Estimated time 10 second(s) Hangup
/opt/ibm/db2/V9.7/adm/db2licm -l
/opt/ibm/db2/V9.7/license/db2ese_c.lic,在/opt/ibm/db2/V9.7/adm/目录下执行:./db2licm -a /opt/ibm/db2/V9.7/license/db2ese_c.lic
groupadd -g 901 db2iadm1 groupadd -g 902 db2fadm1 groupadd -g 903 dasadm1 useradd -g db2iadm1 -u 801 -d /home/db2inst1 -m db2inst1 useradd -g db2fadm1 -u 802 -d /home/db2fenc1 -m db2fenc1 useradd -g dasadm1 -u 803 -d /home/dasadm1 -m dasusr1
passwd db2inst1
[root@server]#cd /opt/ibm/db2/V9.7/instance [root@instance]#./dascrt -u dasusr1 (创建DB2管理服务器) [root@instance]#./db2icrt -u db2inst1 db2inst1 (创建DB2实例)
[root@localhost instance]# su - db2inst1 [db2inst1@localhost ~]$ db2start
[db2inst1@localhost ~]$ db2 create database KHYX_YS using codeset GBK territory CN
查看db2是否开启tcp服务 [root@localhost db2inst1]# db2set –all 如果没有看到如下内容:DB2COMM=TCPIP,则需要对db2进行设置 [root@localhost db2inst1]# db2set db2COMM=TCPIP 查看是否配置db2 Tcp服务名称: [root@localhost db2inst1]# db2 get dbm cfg | grep -i SVCENAME 如果SVCENAME 没有对应的值,则需要设置DB2的TCP服务名称或端口 [root@localhost db2inst1]# db2 update dbm cfg using svcename db2AppName(自定义名称或端口号) 查看/etc/services中是否已经将db2的tcp服务添加到系统服务中(端口号不需要这部) [root@localhost db2inst1]# cat /etc/services | grep db2 如果没有找到任何内容或者没有db2AppName相关内容,则需要在services文件中加入db2AppName 50000/tcp,其中50000为 db2 tcp服务的端口号。使用vi /etc/services命令进入编辑器添加内容,然后ESC键 :wq保存退出编辑器。 重启db2服务,查看db2 tcp服务监听的端口是否已经启用 [db2inst1@localhost ~]$ db2 force application all(强制停止数据库) [db2inst1@localhost ~]$ db2start [db2inst1@localhost ~]$ netstat -na | grep 50000