怎样搭建DB2 DPF for Linux/Unix?
DPF 是 Database Partition Feature的简称。也就是DB2的多分区数据库。
1. 概念介绍
Instance级别的multi-partition DB2环境分为3种: DB2 SMP, DB2 MPP 和 DB2 SMP Cluster
DB2 SMP指的是在一台有多个CPU的机器上(双核在Linux上被识别为2个CPU),建立的一个有多个partition(不超过CPU的数量)的DB2 Instance.
DB2 MPP指的是在多台单个CPU的机器上,建立的一个有多个partition的DB2 Instance,在其中的每台机器上建立1个Partition.
DB2 SMP Cluster指的是在多台有多个CPU的机器上,建立的一个有多个partition的DB2 Instance,在其中的每台机器上建立多个Partition.
3种partition环境的搭建不完全相同,现在分别叙述.
这种环境对机器的要求很高,一般来说至少4个CPU(或2个双核CPU),4G以上内存以及至少有6块独立硬盘或盘阵,才能体现出DB2 SMP环境的效率优势来.
好处是:对网络的要求比较低,只要满足客户端到server的连接就可以了.配置相对简单,稳定性比较高.便于集中管理.
缺点是:服务器配置要求高,增加节点非常麻烦(至少需要增加CPU),受限于磁盘IO通道的速度
DB2在运行的时候需要大量的共享内存(shm),信号量(sem)和消息队列(msg). 一般来说Linux默认的参数都偏小,需要修改.
使用root用户
/sbin/sysctl -w kernel.sem="250 32000 32 1024"
/sbin/sysctl -w kernel.msgmnb=16384
/sbin/sysctl -w kernel.msgmni=1024
/sbin/sysctl -w kernel.msgmax=8192
/sbin/sysctl -w kernel.shmmni=4096
/sbin/sysctl -w kernel.shmall=2097152
/sbin/sysctl -w kernel.shmmax=1073741824
注* 配置的值仅供参考,请参阅Linux系统配置和系统的实际情况进行配置.
只要是包含DB2 DPF(DB partition feature)功能的DB2版本都可以,我使用的是DB2 ese. 安装过程略过,请参考DB2安装文档.
注意:安装DB2时,建议使用db2_install安装。
推荐创建新的DB2 instance用户和组,而不要使用安装DB2时默认创建的用户和组. 用户至少需要创建2个用户和2个组.
使用root用户
/usr/sbin/groupadd <instance group> #instance所在的group,加入这个group的所有用户都具有DBA权限
/usr/sbin/groupadd db2fgrp #fenced用户所在的group
/usr/sbin/useradd -g db2igrp -d /home/db2inst db2inst
#instance用户,因为该用户的home目录是默认的数据文件目录和log目录,
#强烈建议将这个目录建立在单独的卷上,防止因该目录写入过多数据导致
#整个根文件系统崩溃
/usr/sbin/useradd -g db2fgrp -d /home/db2fenc db2fenc
#fenced用户
使用root用户
/opt/ib