说明:
步骤1 以root用户登录需要安装DB2的服务器。
步骤2 创建用户组和用户。
# su -root
# groupdel db2grp
# groupdel db2fgrp
# groupdel dasadm
# groupadd db2grp
# groupadd db2fgrp
# groupadd dasadm
# useradd -m -g db2grp -d /home/db2inst -s /bin/bash db2inst
# useradd -m -g db2fgrp -d /home/db2fenc -s /bin/bash db2fenc
# useradd -m -g dasadm -d /home/dasusr -s /bin/bash dasusr
步骤3 执行如下命令分别设置db2inst1、db2fenc和dasusr用户密码。
# passwd db2inst
New password:db2inst
Re-enter new password:db2inst
Password changed
# passwd db2fenc
……
# passwd dasusr
……
以上输入的用户密码仅作为示例,实际安装时请统一规划用户密码。
2.安装db2数据库
2.1 获取并解压安装包
步骤1 以root用户登陆需要安装DB2的服务器。
步骤2 创建DB2安装包存放目录
#mkdir/home/db2install
步骤3 将DB2安装包db2_v101_linuxx64_expc.tar拷贝到上一步骤创建的目录下。
步骤4 解压DB2安装包db2_v101_linuxx64_expc.tar。
# tar -xvf db2_v101_linuxx64_expc.tar
解压后将在/home/db2install目录下生成目录expc。
2.2执行数据库安装脚本
步骤1 以root用户登陆需要安装DB2的服务器。
步骤2 进入目录/home/db2install/expc
#cd /home/db2install/expc
步骤3 运行DB2安装脚本
#./db2_install
2.3创建监听 License
步骤1 以root用户登录DB2服务器。
步骤2 进入目录/opt/ibm/db2/V10.1/adm。
#cd /opt/ibm/db2/V10.1/adm
步骤3 安装DB2 license,命令如下:
#./db2licm -a /home/db2install/expc/db2/license/db2expc_uw.lic
2.4 创建DBA和数据库实例
步骤1 以root用户登录DB2服务器。
步骤2 进入目录/opt/ibm/db2/V10.1/instance。
#cd /opt/ibm/db2/V10.1/instance
步骤3 创建DAS。
#./dascrt -u dasusr
-u dasusr表示指定DAS用户名。dasusr为A.创建用户组和用户步骤2中创建的dasusr用户
步骤4 创建数据库实例。
# ./db2icrt -p 50000 -u db2fencdb2inst
l -p 50000参数表示指定DB2实例对外服务端口,必须使用端口50000。
l -u db2fenc表示指定此实例使用的fence用户名。
l db2inst表示指定此实例名和所有者名(二者相同)。
步骤5 设置数据库实例自动启动。
# su -db2inst
db2inst@ localhost:~>db2iauto-on db2inst
2.5 创建数据库
步骤1 以db2inst用户登录DB2服务器。
# sudb2inst
步骤2执行建库语句db2 create database数据库名using codeset GBK territory cn
# db2start
# db2 create database borzmmp automatic storage yes using codeset UTF-8 territory US pagesize 32768
步骤3创建表空间
<1、新建一个sql文件 tablespace.sql ,将下面的内容复制到文件里
首先创建路径/home/datafile/db2file
--建表空间存放路径
# suroot
# mkdir-p /home/datafile/db2file
# chown-R db2inst /home/datafile/db2file
--连接数据库
#sudb2inst
#db2 connect to sample;
--创建缓冲池(bp32k 缓冲池名称)
# db2"create bufferpool bp32k all nodes size -1 pagesize 32k"
--新建表空间
#db2"create tablespace sample_dms pagesize 32k managed by database using (file &#39;/home/datafile/db2file/sample_dms.dat&#39; 10M ) autoresize yes bufferpool bp32k
maxsize none";
--断开数据库
# db2 connect reset;
--删除表空间
# db2 "DROP TABLESPACE sample_dms"
<2、链接数据库执行建表空间脚本
#db2 connect to sample user db2inst using db2inst
# db2 -stvf tablespace.sql
2.6 配置端口
步骤1 以db2inst用户登录DB2服务器。
#db2 update database manager configuration using svcename DB2_db2inst
步骤2 以root用户登录新增端口到/etc/services配置文件中
#vi &#43; /etc/services
新增一行
#DB2_db2inst 50000/tcp #db2
步骤3重新启动以db2inst登录
#db2setDB2COMM&#61;TCPIP
# db2stop force
#db2start
3.关闭防火墙
步骤1以root用户登录执行下面语句关闭防火墙
#/etc/init.d/iptablesstop
4.删除数据库安装包
步骤 1 以root用户登录删除安装文件夹
#cd /home/db2install
#rf –rm db2install
5.卸载db2数据库
5.1删除DB2数据库
步骤 1 切换到db2inst用户&#xff0c;并查看当前实例下所有的数据库信息。
# su - db2inst
db2inst&#64;linux:~> db2 list db directory
System Database Directory
Number of entries in the directory &#61; 2
Database 1 entry:
Database alias &#61; sample
Database name &#61; sample
Node name &#61; NODE0
Database release level &#61; a.00
Comment &#61;
Directory entry type &#61; Remote
Catalog database partition number &#61; -1
Alternate server hostname &#61;
Alternate server port number &#61;
此处数据库相关信息均为举例。请根据实际情况记录下数据库相关信息以便后续步骤的操作。
步骤 2 反编目与数据库相关的远程数据库。
db2inst&#64;linux:~> db2 uncatalog db sample
DB20000I The UNCATALOG DATABASE command completed successfully.
DB21056W Directory changes may not be effective until the directory cache is
refreshed.
步骤 3 查看当前实例下所有的节点信息(如果没有&#xff0c;跳过第4步)。
db2inst&#64;linux:~> db2 list node directory
Node Directory
Number of entries in the directory &#61; 1
Node 1 entry:
Node name &#61; NODE0
Comment &#61;
Directory entry type &#61; LOCAL
Protocol &#61; TCPIP
Hostname &#61; 10.85.60.160
Service name &#61; 60000
步骤 4 反编目与数据库相关的的远程节点。
db2inst&#64;linux:~> db2 uncatalog node NODE0
DB20000I The UNCATALOG NODE command completed successfully.
DB21056W Directory changes may not be effective until the directory cache is
refreshed.
步骤 5 停止数据库实例。
db2inst&#64;linux:~> db2stop force
12/19/2007 15:44:30 0 0 SQL1064N DB2STOP processing was successful.
SQL1064N DB2STOP processing was successful.
步骤 6 启动数据库实例。
db2inst&#64;linux:~> db2start
12/19/2007 15:44:55 0 0 SQL1063N DB2START processing was successful.
SQL1063N DB2START processing was successful.
步骤5 和6 主要目的是断开与当前数据库已建立的所有连接&#xff0c;以便能顺利删除数据库。
步骤 7 删除数据库&#xff08;如果没有跳过&#xff09;。
db2inst&#64;linux:~> db2 drop db sample
DB20000I The UNCATALOG NODE command completed successfully.
DB21056W Directory changes may not be effective until the directory cache is
步骤 8 删除应用数据库相关文件。
db2inst&#64;linux:~> cd /home/db2inst
db2inst&#64;linux:~> rm -r capture bin db2ha logs
db2inst&#64;localhost ~]$ rm -rf db2inst
5.2卸载DB2 应用程序
步骤 1 以dasusr用户登录DB2 数据库系统。
db2inst&#64;linux:~>su dasusr
步骤 2 停止DB2 DAS 。
dasusr&#64;linux:~> db2admin stop
SQL4407W The DB2 Administration Server was stopped successfully.
步骤 3 切换到root用户&#xff0c;删除DB2 DAS 。
dasusr&#64;linux:~> su - root
# cd /opt/ibm/db2/V10.1/instance
# ./dasdrop
SQL4410W The DB2 Administration Server is not active.
DBI1070I Program dasdrop completed successfully.
步骤 4 查看当前系统中的DB2 实例。
# cd /opt/ibm/db2/V10.1/instance
# ./db2ilist
db2inst
步骤 5 停止DB2 实例。
# su - db2inst
db2inst&#64;linux:~> db2 terminate
DB20000I The TERMINATE command completed successfully.
停止数据库
db2inst&#64;linux:~> db2stop
2007-12-20 13:04:50 0 0 SQL1064N DB2STOP processing was successful.
SQL1064N DB2STOP processing was successful.
步骤 6 删除系统中的DB2 实例。
db2inst&#64;linux:~> su - root
# cd /opt/ibm/db2/V10.1/instance
# ./db2idrop db2inst
DBI1070I Program db2idrop completed successfully.
若在查询系统中存在的实例时还有除db2inst 之外的其他用户&#xff0c;也需要使用上述方法将其删除。
步骤 7 执行卸载程序。
# cd /opt/ibm/db2/V10.1/install
# ./db2_deinstall -a
Removing package(s) now.....
IBM_db2essg81....
IBM_db2icms81....
IBM_db2icc81....
...
Program db2_deinstall completed successfully...
步骤 8 删除DB2 用户组和用户。
# userdel dasusr
# userdel db2inst
# userdel db2fenc
# groupdel db2grp
# groupdel db2fgrp
# groupdel dasadm
步骤 9 删除DB2 用户目录。
# cd /home
# rm -rf dasusr db2fenc db2inst
# cd /var
root&#64;localhost var]# rm -rf db2
#cd /var/mail
[root&#64;localhost mail]# rm -rf dasusr db2fenc db2inst
若删除DB2 应用程序之后&#xff0c;需要重新安装该程序&#xff0c;则需要重新执行Breeze 菜单中创建
用户和用户组的步骤&#xff0c;否则Breeze 脚本将无法创建用户和用户组&#xff0c;并提示“DBI1084E An
attempt to create /home/dasusr/das failed.”、“Error! Create DAS failed”。
步骤 10 删除/etc/services 文件中与DB2 相关的如下端口信息。
# vi &#43; /etc/services
输入/ 后面输入名称&#xff0c;点击回车进行查找然后删除。&#xff08;默认只能搜到前4个&#xff09;
/ibm-db2
/questdb2-lnchr
ibm-db2 523/tcp
ibm-db2 523/udp
questdb2-lnchr 5677/tcp
questdb2-lnchr 5677/udp
DB2_db2db2inst 60000/tcp
DB2_db2db2inst_1 60001/tcp
DB2_db2db2inst_2 60002/tcp
DB2_db2db2inst_END 60003/tcp
db2c_db2db2inst 50001/tcp
6.备份还原数据库
备份数据库
db2 force application all
db2 backup db dbtest to /home/db2inst/backup
恢复数据库
db2 restore db dbtest from /home/db2inst/backup taken at 20151225114532 into dbborz
安装包稍后上传