安装目录
先创建一个/opt/ibm的目录,把db2的压缩包文件上传到这个目录下,然后再解压
[root@linuxtest5569 ~]# cd /opt/ibm
[root@linuxtest5569 ibm]# ls
db2.tar
[root@linuxtest5569 ibm]# tar db2.tar
[root@linuxtest5569 ibm]# ls
db2 db2.tar
创建用户组和用户
db2数据库并没有独立的用户,需要依赖系统的用户
#创建组
groupadd db2adm1
#创建用户
useradd -d /home/db2inst1 -m db2inst1 -g db2adm1
#为用户创建密码
passwd db2inst1
创建实例
进入到我们上面解压的包的目录里面
[root@linuxtest5569 V11.5]# cd instance/
[root@linuxtest5569 instance]# pwd
/opt/ibm/db2/V11.5/instance
然后为用户创建实例,db2数据库一个用户只能创建一个实例,一个实例可以有多个数据库
[root@linuxtest5569 instance]#./db2icrt -u db2inst1 db2inst1
这里强调一下,实例名长度不能超过8位
创建数据库
实例创建完成后,我们切换到实例用户,启动实例并创建数据库
[root@linuxtest5569 instance]# su - db2inst1
[db2inst1@linuxtest5569 ~]$ db2start
[db2inst1@linuxtest5569 ~]$ db2 create db hupp2dci
创建数据库时一般默认的都是utf-8编码,如果我们需要gbk就可以这样创建
[db2inst1@linuxtest5569 ~]$ db2 CREATE DATABASE hupp2dci USING CODESET gbk TERRITORY CN
到这里数据库的安装和创建就已经完成
这里补充一下,如果使用数据库过程中出现下面这个错误
SQL0332N Character conversion from the source code page "1386" to the target code page "819" is not supported.
这是因为数据库的字符编码格式和当前用户的环境编码格式不一样,可以登录到实例用户,然后设置DB2CODEPAGE,一次输入下面命令
db2set DB2CODEPAGE=1386
db2 TERMINATE
db2stop FORCE
db2start
远程编目
如果数据库和产品不在一个服务器,那么我们还需要对db2数据库做个编目才能连接,不然会提示找不到数据库
添加编目节点
db2 catalog tcpip node <NODENAME> remote <IP> server <远程节点端口号>
eg:
[db2dci@linuxtest5569 ~]$db2 catalog tcpip node DCI_3638 remote 10.20.36.38 server 50004
[db2dci@linuxtest5569 ~]$db2 terminate
如果不知道实例的端口号,可以借助下面的命令查看一下
db2 get dbm cfg | grep -i service
[db2dci@linuxtest5569 ~]$ db2 get dbm cfg | grep -i service
TCP/IP Service name (SVCENAME) = 50004
SSL service name (SSL_SVCENAME) =
如果创建错了可以先取消掉编目节点
db2 uncatalog node <node_name>
eg:
[db2dci@linuxtest5569 ~]$ db2 uncatalog node DCI_3638
添加编目数据库
db2 CATALOG DATABASE <dbname> AS <dbaliasname> AT NODE <NODENAME> AUTHENTICATION SERVER
eg:
[db2dci@linuxtest5569 ~]$ db2 catalog db db2dci as db2dci at node DCI_3638 authentication SERVER
[db2dci@linuxtest5569 ~]$ db2 terminate
当然也可以取消编目数据库
db2 uncatalog database <node_name>
eg:
[db2dci@linuxtest5569 ~]$ db2 uncatalog database db2dci
然后我们可以试着连接一下
db2 connect to db2dic user db2dci using db2dci #此处伪用户密码,别妄想连上,用自己自己创建用户连
Database Connection Information
Database server = DB2/LINUXX8664 11.5.0.0
SQL authorization ID = HUPP2DCI
Local database alias = HUPP2DCI
本地编目
本地编目是数据库服务器和应用服务器在同一物理机上
db2 catalog db hupp2dci on /home/db2dci
hupp2dci 是编目的数据库名称
/home/db2dci 是db2实例的路径
基本上按照这个步骤,应该不会出问题