DB2数据库安装(db2 9.7 ,centos7)

一.软件配置

Db2数据库 db2exc_970_LNX_x86_64.tar.gz
环境 centos7
DB2客户端 Aqua Data Studio 19.0 - 64bitlinux

二.Db2安装

1.解压
tar -zxvf db2exc_970_LNX_x86_64.tar.gz
2.检查安装条件
./db2prereqcheck
WARNING:
      The 32 bit library file libstdc++.so.6 is not found on the system.
       32-bit applcations may be affected.
yum install -y libstdc++.so.6
3.安装

./db2_installc++

4.建立DB2运行所须要的用户组和用户

groupadd -g 901 db2grp
groupadd -g 902 db2fgrp
groupadd -g 903 db2agrp
useradd -g db2grp -u 801 -d /home/db2inst1 -m -s /bin/sh db2inst1
useradd -g db2fgrp -u 802 -d /home/db2fenc -m -s /bin/sh db2fenc
useradd -g db2agrp -u 803 -d /home/db2das -m -s /bin/sh db2dasweb

5.添加密码

passwd db2inst1
passwd db2fenc
passwd db2dassql

6.进入/opt/ibm/db2/V9.7/instance目录

cd /opt/ibm/db2/V9.7/instance
执行如下命令
./dascrt -u db2das
./db2icrt -u db2inst1 db2inst1
这里dascrt建立的是DB2 adminstration server,每台服务器只有一个这种server,为进行DB2管理(好比运行控制中心)所必须,同时指定其管理用户是db2das。db2icrt建立的是实例,其名字通常和管理用户名同样,这里均为db2inst1shell

6.db2set -g DB2SYSTEM=localhost.localdomain

db2 terminate数据库

6.vi /home/db2inst1/.bash_profile

插入下面这句话:
# The following three lines have been added by IBM DB2 instance utilities.
if [ -f /home/db2inst1/sqllib/db2profile ]; then
. /home/db2inst1/sqllib/db2profile
Fivim

7.vi /home/db2inst1/.profile

export PATH=$PATH:/home/db2inst1/sqllib/adm:/home/db2inst1/bincentos

8.vi /home/db2das/.profile

export PATH=$PATH:/home/db2das/sqllib/adm:/home/db2das/binbash

9.切换到db2das用户,执行db2admin启动DB2管理服务器。

cd /opt/ibm/das/bin
db2admin start
切换到db2inst1用户,执行db2start启动数据库实例。
db2start服务器

10. 配置DB2
1 设置DB2自启动。
		使用root用户执行如下命令:
			cd /opt/ibm/db2/V9.7/instance
			./db2iauto -on db2inst1
		设置对db2inst1在LINUX启动时自动启动。
	
	2 配置网络
		切换到db2inst1用户。
			su - db2inst1
		修改DB2的服务端口为50000,这里默认端口就是50000。
			db2 update dbm cfg using SVCENAME 50000
		修改DB2链接方式为TCPIP,而后可经过JDBC、ODBC等访问本DB2服务器上的数据库,安装了DB2客户端的其它机器也可访问数据库。
			db2set DB2COMM=TCPIP
	3 禁用防火墙
			vi /etc/selinux/config,修改成:
				SELINUX=disabled
	4 服务禁用防火墙

显示状态: firewall-cmd --state
关闭:systemctl stop firewalld
开机禁用 : systemctl disable firewalld

11.Centos7提示" xxx 不在 sudoers 文件中。此事将被报告。"

su
cd /etc
chmod 740 sudoers
vim sudoers
fendo ALL=(root) ALL, !/usr/bin/passwd [A-Za-z]*, !/usr/bin/passwd root

四.客户端链接

在这里插入图片描述

五.批注

备注: 建立和访问数据库,安装验证
1 启动与关闭数据库实例
su - db2ins1
db2start
db2 force applications all
db2stop
(在调用toad链接建立数据库时,先本身在命令行下随意建立一个表,用来初始化这个用户的schema)
db2 create database test1

2 DB2 for linux卸载
因为某种缘由,要卸载DB2再从新安装,必定要彻底卸载DB2,不然不能从新安装或安装后的DB2不可用。
由于卸载步骤比较复杂,我建议在虚拟机上安装该软件的朋友,应该先作一个快照,而后方可进行,出错就恢复快照,从新来过。在主机上卸载则最好先作一个备份,以防万一。
为了操做方便,能够同时打开几个Shell,分别属于不一样用户,配合完成下面的操做。

一、在linux上卸载DB2的通常过程:
a.删除全部数据库。可使用“控制中心”或drop database命令删除数据库。笔者卸载而未删除数据库,结果是从新安装后没法创建同名数据库。
b.中止DB2管理服务器。
c.中止DB2实例。
d.除去DB2管理服务器。
e.除去DB2实例。
f.除去DB2产品。

二、中止DB2管理服务器:
必需要中止DB2管理服务器才能在linux上卸载DB2。
a.做为DB2管理服务器全部者登录。
b.用db2admin stop命令中止DB2管理服务器。

三、中止DB2实例:
必需要中止DB2实例才能在linux上卸载DB2。
a.做为具备root用户权限的用户登录。
b.输入/opt/ibm/db2/V9.7/bin/db2ilist命令,获取系统上的全部DB2实例的名称。
c.注销。
d.做为想要中止的实例的全部者登录。
e.进入该用户的主目录下,运行脚本:. sqllib/db2profile
d.输入db2 force application all命令来中止全部数据库应用程序。
e.输入db2stop命令来中止DB2数据库管理器。
f.输入db2 terminate来确认DB2数据库管理器已中止。
g.对每个要删除的实例重复以上步骤。

四、删除DB2管理服务器:
必须删除DB2管理服务器才能卸载DB2。
a.做为DB2管理服务器全部者登录。
b.进入该用户的主目录下,运行脚本:. das/dasprofile.
c.注销。
d.做为root登录,经过输入命令/opt/ibm/db2/V9.7/instance/dasdrop除去DB2管理服务器。

五、删除DB2实例:
一旦删除系统上的实例,该实例下的全部DB2数据库都将不可用。
a.经过输入/opt/ibm/db2/V9.7/instance/db2idrop db2instname删除实例。

六、卸载DB2产品
以root身份登录,到DB2版本产品CD-ROM上的根目录或DB2安装文件(一般就是tar解包文件)下找到db2_deinstall命令,
运行db2_deinstall -a命令能够删除全部DB2产品。
可能须要输入DB2安装路径,这里是/opt/ibm/db2/V9.7
而后也能够在LINUX中删除DB2用户,这并不是必须,从新安装仍可以使用它们。

运行时报错
-sh-3.1$ ./db2start
SQL10007N Message “-1390” could not be retrieved. Reason code: “3”.
sudo usermod -s /bin/bash db2inst1

sudo gedit /home/db2inst1/.profile

添加如下内容

export PATH=$PATH:/home/db2inst1/sqllib/adm:/home/db2inst1/bin

从新尝试以db2inst1用户登陆,发现shell已经变了。try!: ./unload to extract and ./db2gen.sh