安装DB2数据库
环境
CentOS 7
DB2 Express-C v10.1 (db2_v101_linuxx64_expc.tar.gz)
安装DB2
1. 解压安装包
1 | tar -zxvf db2_v101_linuxx64_expc.tar.gz -C /opt |
2. 执行安装
db2_install 默认安装目录为 /opt/ibm/db2, 可以通过 -b指定安装目录, -h 帮助
1 | su - # root用户 |
安装实例
1. 创建实例相关用户
在Linux/Unix上创建实例时必须有与实例同名用户存在;
实例用户的home目录,是创建实例的位置;
受防护用户(db2fenc1)与应用开发相关,但是作为创建实例却是必须的。
1 | root用户执行以下命令 |
2. 实例安装
可以直接键入 ./db2icrt 获取命令帮助信息;
Linux/Unix下 /home/实例用户/sqllib/ 目录为实例目录,实例目录一旦创建不能更改其位置。
1 | root用户执行以下命令 |
安装数据库
使用db2实例用户创建数据库
1. 创建数据库目录1
2
3
4su - # root用户
mkdir /data/db2/data # 创建数据库目录
mkdir /data/db2/log # 创建数据库事物日志目录
chown -R db2inst1:db2inst1 /data/db2/ # 赋权给 db2实例用户
2. 创建数据库1
2
3
4
5
6
7
8
9su - db2inst1 # db2inst1用户
db2start # 启动实例
# 创建数据库
db2 "create database test
automatic storage yes on /data/db2/data
dbpath on /data/db2/log
using codeset utf-8
territory CN
pagesize 8 k"
配置 DB2运行环境
可以通过引用 InstanceHome/sqllib/db2profile 文件来配置其他用户 DB2 运行环境
在用户目录下 .bash_profile 文件中加入如下配置1
2
3if [ -f /home/db2inst1/sqllib/db2profile ]; then
. /home/db2inst1/sqllib/db2profile
fi
配置 DB2服务器的 TCP/IP通信
1. 标识 “服务名称”和 “连接端口” 或 仅标识 ”连接端口”
- 方式一: 标识 ”连接服务名称” 和 “连接端口”
在 数据库管理器配置文件 中的 SVCENAME(服务名)指定 “服务名称”1
2db2 get dbm cfg | grep SVCENAME #获取当前数据库管理器配置文件中服务名
db2 update dbm cfg using SVCENAME db2inst1 #设置数据库管理器配置文件中服务名为: db2inst1
在 /etc/services 配置文件中添加与修改后服务名称一致的对应端口号1
db2inst1 50000/tcp
- 方式二: 仅标识 “连接端口”
1 | db2 update dbm cfg using SVCENAME 50000 |
2. 设置服务器的通信协议
1 | db2set DB2COMM=tcpip |
配置 DB2 客户端通信
节点目录1
2
3
4
5
6-- 列出节点
db2 list node directory
-- 编目节点
db2 catalog tcpip node <node_name> remote <host_name | ip> server <port_name | port>
-- 删除节点
db2 uncatalog node <node_name>
数据库目录1
2
3
4
5
6-- 列出数据库
db2 list db directory
-- 编码数据库
db2 catalog db <db_name> as <db_alias> at node <node_name>
-- 删除数据库
db2 uncatalog db <db_alias>