一、背景
项目需要兼容多种数据库oracle、mysql、db2、KingDB等等......
自己在阿里云买的服务器安装测试......
二、记录安装过程
1.创建db2目录
[root@ysx ysxapp]# mkdir db2
[root@ysx ysxapp]# cd db2
2.上传安装包
[root@ysx db2]# ll
总用量 791324
drwxr-xr-x 3 root root 4096 7月 8 23:17 expc
-rw-r--r-- 1 root root 810304283 7月 7 22:26 v11.1_linuxx64_expc.tar.gz
3.解压安装包
[root@ysx db2]# tar -zxvf v11.1_linuxx64_expc.tar.gz
[root@ysx db2]# cd expc/
[root@ysx expc]# ls
db2 db2ckupgrade db2_deinstall db2_install db2ls db2prereqcheck db2setup
4.检查是否满足安装条件
[root@ysx expc]# ./db2prereqcheck
==========================================================================
正在检查操作系统 "Linux" V"11.1.4.4" 的 DB2 安装的先决条件。
正在验证 "Linux 分发 " ...
要求的最低操作系统分发:"CENTOS";版本:"6";Service pack:"7"。
实际操作系统分发版本:"7";Service pack:"6"。
达到要求。
正在验证 "内核级别 " ...
要求的最低操作系统内核级别:"2.6.16"。
实际操作系统内核级别:"3.10.0"。
达到要求。
正在验证 "C++ 库版本 " ...
要求的最低 C++ 库版本:"libstdc++.so.6"
标准 C++ 库位于以下目录中:"/usr/lib64/libstdc++.so.6.0.19"。
实际 C++ 库:"CXXABI_1.3.1"
达到要求。
正在验证 ""libstdc++.so.6" 的 32 位版本 " ...
在以下目录中找到了 32 位 "/lib/libstdc++.so.6":"/lib"。
达到要求。
正在验证 "libaio.so 版本 " ...
DBT3553I db2prereqcheck 实用程序已成功装入 libaio.so.1 文件。
达到要求。
正在验证 "libnuma.so 版本 " ...
DBT3610I db2prereqcheck 实用程序已成功装入 libnuma.so.1 文件。
达到要求。
正在验证 "/lib/libpam.so*" ...
达到要求。
DBT3533I db2prereqcheck 实用程序已确认所有安装先决条件均已满足
#此处省略部分内容......
DBT3533I db2prereqcheck 实用程序已确认所有安装先决条件均已满足。
DBT3555E db2prereqcheck 实用程序已确定,以下版本不支持当前平台:"9.8.0.4"。
DBT3555E db2prereqcheck 实用程序已确定,以下版本不支持当前平台:"9.8.0.3"。
DBT3555E db2prereqcheck 实用程序已确定,以下版本不支持当前平台:"9.8.0.2"。
#如果之前的检查中存在某些不满足项,可以通过下面的命令安装对应库文件
root@db01:/usr/local/db2/expc# apt-get install lib32stdc++6
root@db01:/usr/local/db2/expc# apt-get install libaio1
root@db01:/usr/local/db2/expc# apt-get install libpam0g:i386
5.开始正式安装
[root@ysx expc]# ./db2_install
阅读 CD 上 db2/license 目录中的许可协议文件。
***********************************************************
要接受这些条款,请输入 "yes"。否则,输入 "no" 以取消安装过程。[yes/no]
yes
产品的缺省安装目录 - /opt/ibm/db2/V11.1
***********************************************************
是否安装至缺省目录 (/opt/ibm/db2/V11.1)?[yes/no]
yes
正在初始化 DB2 安装。
要执行的任务总数为:36
要执行的所有任务的总估计时间为:1591 秒
任务 #1 启动
描述:正在检查许可协议的接受情况
估计时间 1 秒
任务 #1 结束
任务 #2 启动
描述:具备 root 用户特权的情况下进行安装时的基本客户机支持
估计时间 3 秒
任务 #2 结束
任务 #3 启动
描述:产品消息 - 英语
估计时间 14 秒
任务 #3 结束
任务 #4 启动
描述:基本客户机支持
估计时间 352 秒
任务 #4 结束
任务 #5 启动
描述:Java 运行时支持
估计时间 188 秒
任务 #5 结束
任务 #6 启动
描述:Java 帮助 (HTML) - 英语
估计时间 7 秒
任务 #6 结束
任务 #7 启动
描述:具备 root 用户特权的情况下进行安装时的基本服务器支持
估计时间 8 秒
任务 #7 结束
任务 #8 启动
描述:全局安全工具箱
估计时间 64 秒
任务 #8 结束
任务 #9 启动
描述:Java 支持
估计时间 13 秒
任务 #9 结束
任务 #10 启动
描述:SQL 过程
估计时间 3 秒
任务 #10 结束
任务 #11 启动
描述:ICU 实用程序
估计时间 34 秒
任务 #11 结束
任务 #12 启动
描述:Java 公共文件
估计时间 18 秒
任务 #12 结束
任务 #13 启动
描述:基本服务器支持
估计时间 577 秒
任务 #13 结束
任务 #14 启动
描述:DB2 数据源支持
估计时间 6 秒
任务 #14 结束
任务 #15 启动
描述:Spatial Extender 服务器支持
估计时间 18 秒
任务 #15 结束
任务 #16 启动
描述:DB2 LDAP 支持
估计时间 4 秒
任务 #16 结束
任务 #17 启动
描述:“DB2 实例安装”向导
估计时间 25 秒
任务 #17 结束
任务 #18 启动
描述:集成动漫复制支持
估计时间 3 秒
任务 #18 结束
任务 #19 启动
描述:Spatial Extender 客户机
估计时间 3 秒
任务 #19 结束
任务 #20 启动
描述:通信支持 - TCP/IP
估计时间 3 秒
任务 #20 结束
任务 #21 启动
描述:基本应用程序开发工具
估计时间 35 秒
任务 #21 结束
任务 #22 启动
描述:DB2 更新服务
估计时间 4 秒
任务 #22 结束
任务 #23 启动
描述:EnterpriseDB 代码
估计时间 4 秒
任务 #23 结束
任务 #24 启动
描述:样本数据库源
估计时间 4 秒
任务 #24 结束
任务 #25 启动
描述:DB2 Text Search
估计时间 123 秒
任务 #25 结束
任务 #26 启动
描述:命令行处理器加强版
估计时间 6 秒
任务 #26 结束
任务 #27 启动
描述:第一步
估计时间 3 秒
任务 #27 结束
任务 #28 启动
描述:DB2 Express-C 的产品特征符
估计时间 3 秒
任务 #28 结束
任务 #29 启动
描述:正在设置 DB2 库路径
估计时间 180 秒
任务 #29 结束
任务 #30 启动
描述:正在执行控制任务
估计时间 20 秒
任务 #30 结束
任务 #31 启动
描述:正在更新全局注册表
估计时间 20 秒
任务 #31 结束
任务 #32 启动
描述:正在启动 DB2 故障监视器
估计时间 10 秒
任务 #32 结束
任务 #33 启动
描述:正在更新 db2ls 和 db2greg 链接
估计时间 1 秒
任务 #33 结束
任务 #34 启动
描述:正在注册 DB2 许可证
估计时间 5 秒
任务 #34 结束
任务 #35 启动
描述:正在设置缺省全局概要文件注册表变量
估计时间 1 秒
任务 #35 结束
任务 #36 启动
描述:正在初始化实例列表
估计时间 5 秒
任务 #36 结束
任务 #37 启动
描述:正在注册 DB2 更新服务
估计时间 30 秒
任务 #37 结束
任务 #38 启动
描述:正在更新全局概要文件注册表
估计时间 3 秒
任务 #38 结束
已成功完成执行。
有关更多信息,请参阅 "/tmp/db2_install.log.5804" 上的 DB2
安装日志。
6.创建实例前先创建对应的用户和组
[root@ysx expc]# groupadd -g 2000 db2iadm1
[root@ysx expc]# useradd -m -g db2iadm1 -d /home/db2inst1 db2inst1
[root@ysx expc]# passwd db2inst1
更改用户 db2inst1 的密码 。
新的 密码:
重新输入新的 密码:
passwd:已成功更新密码
7.安装 license(产品许可证) PS:如果是ExpressC版本就不用做,我的不用安装
如果需要安装执行以下命令
#安装License
cd /opt/ibm/db2/V11.1/adm/
chmod -R 775 *
./db2licm -a /usr/local/db2/expc/db2/license/db2expc_uw.lic
8.创建实例
[root@ysx expc]# cd /opt/ibm/db2/V11.1/instance/
[root@ysx instance]# chmod -R 775 *
[root@ysx instance]# ./db2icrt -p 50000 -u db2inst1
DBI1446I The db2icrt command is running.
DB2 installation is being initialized.
Total number of tasks to be performed: 4
Total estimated time for all tasks to be performed: 309 second(s)
Task #1 start
Description: Setting default global profile registry variables
Estimated time 1 second(s)
Task #1 end
Task #2 start
Description: Initializing instance list
Estimated time 5 second(s)
Task #2 end
Task #3 start
Description: Configuring DB2 instances
Estimated time 300 second(s)
Task #3 end
Task #4 start
Description: Updating global profile registry
Estimated time 3 second(s)
Task #4 end
The execution completed successfully.
For more information see the DB2 installation log at "/tmp/db2icrt.log.28370".
DBI1070I Program db2icrt completed successfully.
9.创建样本数据库
[root@ysx instance]#su - db2inst1
[db2inst1@ysx ~]$ db2 create db db2sampl using codeset utf-8 territory CN
Starting the DB2 instance...
Creating database "SAMPLE"...
Connecting to database "SAMPLE"...
Creating tables and data in schema "DB2INST1"...
Creating tables with XML columns and XML data in schema "DB2INST1"...
Stopping the DB2 instance...
'db2sampl' processing complete.
[db2inst1@ysx ~]$ db2start
SQL1063N DB2START processing was successful.
[db2inst1@ysx ~]$ db2 connect to sample
Database Connection Information
Database server = DB2/LINUXX8664 11.1.1.1
SQL authorization ID = DB2INST1
Local database alias = SAMPLE
[db2inst1@ysx ~]$ db2 "select * from staff"
ID NAME DEPT JOB YEARS SALARY COMM
------ --------- ------ ----- ------ --------- ---------
10 Sanders 20 Mgr 7 98357.50 -
20 Pernal 20 Sales 8 78171.25 612.45
30 Marenghi 38 Mgr 5 77506.75 -
40 O'Brien 38 Sales 6 78006.00 846.55
50 Hanes 15 Mgr 10 80659.80 -
60 Quigley 38 Sales - 66808.30 650.25
70 Rothman 15 Sales 7 76502.83 1152.00
80 James 20 Clerk - 43504.60 128.20
90 Koonitz 42 Sales 6 38001.75 1386.70
100 Plotz 42 Mgr 7 78352.80 -
110 Ngan 15 Clerk 5 42508.20 206.60
120 Naughton 38 Clerk - 42954.75 180.00
130 Yamaguchi 42 Clerk 6 40505.90 75.60
140 Fraye 51 Mgr 6 91150.00 -
150 Williams 51 Sales 6 79456.50 637.65
160 Molinare 10 Mgr 7 82959.20 -
170 Kermisch 15 Clerk 4 42258.50 110.10
180 Abrahams 38 Clerk 3 37009.75 236.50
190 Sneider 20 Clerk 8 34252.75 126.50
200 Scoutten 42 Clerk - 41508.60 84.20
210 Lu 10 Mgr 10 90010.00 -
220 Smith 51 Sales 7 87654.50 992.80
230 Lundquist 51 Clerk 3 83369.80 189.65
240 Daniels 10 Mgr 5 79260.25 -
250 Wheeler 51 Clerk 6 74460.00 513.30
260 Jones 10 Mgr 12 81234.00 -
270 Lea 66 Mgr 9 88555.50 -
280 Wilson 66 Sales 9 78674.50 811.50
290 Quill 84 Mgr 10 89818.00 -
300 Davis 84 Sales 5 65454.50 806.10
310 Graham 66 Sales 13 71000.00 200.30
320 Gonzales 66 Sales 4 76858.20 844.00
330 Burke 66 Clerk 1 49988.00 55.50
340 Edwards 84 Sales 7 67844.00 1285.00
350 Gafney 84 Clerk 5 43030.50 188.00
35 record(s) selected.
10.安装DAS。为了远程客户端能够用控制中心来控制数据库服务器,需要在数据库服务器上安装DAS,当然如果只是远程连接而不是远程管理,可以不用装
[db2inst1@ysx ~]$ exit
logout
[root@ysx instance]# groupadd -g 2002 db2asgrp
[root@ysx instance]# useradd -m -g db2asgrp -d /home/db2as db2as
[root@ysx instance]# passwd db2as
更改用户 db2as 的密码 。
新的 密码:
重新输入新的 密码:
passwd:已成功更新密码
[root@ysx instance]# ./dascrt -u db2as
DBI1070I Program dascrt completed successfully.
[root@ysx instance]#su - db2as
[db2as@ysx ~]$ db2admin start
SQL4409W The DB2 Administration Server is already active.
11. 确认db2inst1实例的服务名
[db2as@ysx ~]$ su - db2inst1
密码:
[db2inst1@ysx ~]$ db2 get dbm cfg|grep SVCENAME
TCP/IP Service name (SVCENAME) = 50000
SSL service name (SSL_SVCENAME) =
#如果SVCENAME显示为空,则执行下面的语句更新
[db2inst1@ysx ~]$ db2 update dbm cfg using SVCENAME db2inst1
DB20000I The UPDATE DATABASE MANAGER CONFIGURATION command completed
successfully.
#svcename在客户端连接时需要用到
12.设置端口号
vim /etc/services
在最后增加一行 添加
db2inst1 50000/tcp