DB2的分區架構一般適合於統計類和分析的應用,主要用來為大規模數據處理、高並發數據訪問提供支持,其特點使得許多廉價計算機組成集群在一起協同工作以提高海量數據處理的效率成為可能。DB2 數據庫分區采用 Share-nothing 體系結構,數據庫在一個非共享的環境中被分解為獨立的分區,每個分區都具有自己的資源,例如內存,CPU 和磁盤以及自己的數據、索引、配置文件和事務日志。
本文詳細介紹了和記錄了db210.5在Linux虛擬化環境下的安裝過程,詳細操作見下面的內容:
一、創建用戶和組
1、使用root用戶添加系統用戶
/usr/sbin/groupadd -g 1997 db2igrp
#instance所在的group,加入這個group的所有用戶都具有DBA權限/usr/sbin/groupadd -g 1998 db2fgrp
#fenced用戶所在的group/usr/sbin/useradd -u 1997 -g db2igrp -d /cbusdb/db2inst1 db2inst1
#db2inst1用戶/usr/sbin/useradd -u 1998 -g db2fgrp -d /cbusdb/db2fenc1 db2fenc1
#db2fenc1用戶/usr/sbin/groupadd db2fadmin
/usr/sbin/useradd -g db2fadmin db2admin
2、使用root用戶添加數據庫賬號
/opt/ibm/db2/V10.5/instance/db2icrt -s ese -u db2fenc1 db2inst1
#在所有的機器上,使用root用戶,建立db2 admin server:
/opt/ibm/db2/V10.5/instance/dascrt -u db2admin#啟動db2 admin server:
db2admin start
3、修改節點配置文件
#vim /cbusdb/db2inst1/sqllib/db2nodes.cfg0 cbusdb01 0
1 cbusdb01 1
2 cbusdb02 0
3 cbusdb02 1
4、修改實例參數
su - db2inst1
db2iauto -on db2inst1
db2set DB2_SKIPINSERTED=on
db2set DB2_USE_ALTERNATE_PAGE_CLEANING=ondb2set DB2_EVALUNCOMMITTED=on
db2set DB2_SKIPDELETED=on
db2set DB2COMM=TCPIP
db2set DB2FCMCOMM=TCPIP4
db2set DB2RSHCMD=/bin/rsh
#注意如果配置的ssh則此處需要修改成
db2set DB2RSHCMD=/usr/bin/ssh
db2set DB2CODEPAGE=1386
db2set DB2TERRITORY=86
db2set DB2_PARALLEL_IO=*
5、配置服務端口
DB2c_db2inst1 61000/tcp
DB2_db2inst1 61001/tcp
DB2_db2inst1_1 61002/tcp
DB2_db2inst1_2 61003/tcp
DB2_db2inst1_3 61004/tcp
DB2_db2inst1_4 61005/tcp
DB2_db2inst1_END 61008/tcp
6、調整系統參數,設置dpf所需的資源
/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
7、修改環境變量
cat ./sqllib/db2profile >.profile
vi .bash_profile #添加如下信息:
/cbusdb/db2inst1/sqllib/db2profile
二、配置主機名
分別在兩台主機上修改如下文件:
#vi /etc/sysconfig/network
#-------------------------
#NETWORKING=yes
#HOSTNAME=cbusdb01
#-------------------------
#vi /etc/hosts
#-------------------------
#127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4 cbusdb01#::1 localhost localhost.localdomain localhost6 localhost6.localdomain6#192.168.1.122 cbusdb01
#192.168.1.123 cbusdb02
#-------------------------
三、配置rsh
rsh是遠程運行shell的服務.db2使用rsh服務運行啟動和停止數據庫服務器的命令,以及大部分管理命令.
1、安裝rsh
#yum install rsh*
2、配置rsh的安全文件
#vi /etc/securetty
#add the content
#------------------
#rsh
#rlogin
#rexec
#------------------
3、修改rsh的配置參數/etc/xinetd.d/rsh ##在生產環境建議配置ssh免密登錄
#vi /etc/xinetd.d/rsh
service shell
{
socket_type = stream
wait = no
user = root
log_on_success += USERID
log_on_failure += USERID
server = /usr/sbin/in.rshd
disable = no
}
4、修改rsh的配置文件rlogin
#vi /etc/xinetd.d/rlogin
service login
{
disable = no
socket_type = stream
wait = no
user = root
log_on_success += USERID
log_on_failure += USERID
server = /usr/sbin/in.rlogind
}
4、免密登陸,實例用戶db2inst1的家目錄中創建.rhosts文件
cat $HOME/.rhosts
cbusdb01 db2inst1
cbusdb02 db2inst1
5、CentOS7.0需要單獨下載xinetd
yum install xinetd #低於此版本可不下載
6、重啟rsh服務
service xinetd restart
7、驗證rsh服務
rsh cbusdb01 date
rsh cbusdb02 date
#db2_all echo hi 沒有返回
yum install ksh
四、配置時鐘服務器
1、安裝ntp服務器
#yum install ntp*
# ntpdate -u 202.112.10.36
#ntpdate cn.pool.ntp.org
#service ntpd start
#chkconfig ntpd on
2、修改ntp配置
#允許內網其他機器同步時間
restrict 192.168.1.0 mask 255.255.255.0 nomodify notrap
#互聯網時間服務器
server 210.72.145.44 perfer # 中國國家受時中心server 202.112.10.36
# 1.cn.pool.ntp.orgserver 59.124.196.83
# 0.asia.pool.ntp.org#允許上層時間服務器主動修改本機時間
restrict 210.72.145.44 nomodify notrap noquery
restrict 202.112.10.36 nomodify notrap noquery
restrict 59.124.196.83 nomodify notrap noquery
#外部時間服務器不可用時,以本地時間作為時間服務
server 127.0.0.1
fudge 127.0.0.1 stratum 10
3、修改時區
cp -f /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
clock -w
4、在節點2上配置時鐘服務器
*/5 * * * * /usr/sbin/ntpdate cbusdb01
五、配置nfs服務
1、yum install nfs*
# yum install portmap rpcbind #安裝nfs客戶端
2、配置需要共享的資源
#vi /etc/exports
/cbusdb *(rw,sync,no_root_squash)
/cbusdblog *(rw,sync)
3、啟動nfs server
service rpcbind start
service nfs start
service nfslock restart
4、導出資源
exportfs -rv
5、顯示NFS Server上所有的共享卷
showmount -e
6、在客戶端掛載共享目錄
#mount 192.168.1.122:/cbusdb /cbusdb
#vi /etc/fstab
cbusdb01:/cbusdb /cbusdb nfs rw,timeo=300,retrans=5,hard,intr,bg,nolock,suid
六、關閉selinux
vim /etc/sysconfig/selinux
#SELINUX=disabled
七、測試、創建數據庫
1、啟動數據庫
#db2start
2、創建數據庫
#db2 "create db cbusdb on /cbusdblog using codeset gbk territory cn"
到此,我們可以開始我們的數據庫分區性能測試之旅了,謝謝閱讀,希望能幫到大家,請繼續關注腳本之家,我們會努力分享更多優秀的文章。