DB2 2节点4分区虚拟机环境搭建
操作系统环境 suse linux 11r2 64bit
DB2版本 v10.1_linuxx64_server
虚拟机VM
ssh互信
On db21
cd ~
mkdir ~/.ssh
chmod 700 ~/.ssh
ssh-keygen -t rsa
ssh-keygen -t dsa
On db22
cd ~
mkdir ~/.ssh
ssh-keygen -t rsa
ssh-keygen -t dsa
On db21
cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys
ssh db22 cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
ssh db22 cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys
scp ~/.ssh/authorized_keys db22:~/.ssh/authorized_keys
ssh db21 date
ssh db22 date
ssh db21.mydb2.com date
ssh db22.mydb2.com date
安装
compat-libstdc33-3.2.3-61.i386 //下载 http://rpm.pbone.net/
ofed //linux安装光盘里面
./db2_install -p ese_dsf -b /db2 -t /tmp/db2_install.trc -l /tmp/db2_install.log
./db2_install -p ese_dsf -b /db2 -t /tmp/db2_install.trc -f NOTSAMP -l /tmp/db2_install.log
安装DB2软件
./db2_install -p aese -b /db2 -t /tmp/db2_install.trc -f NOTSAMP -l /tmp/db2_install.log
安装gpfs
./installGPFS -i -u
安装完GPFS以后需要编译
具体需要看/usr/lpp/mmfs/src/README
1) cd /usr/lpp/mmfs/src/config or
(for BGP IO nodes only, cd /bgsys/drivers/ppcfloor/linux/OS/usr/lpp/mmfs/src)
cp env.mcr.sample env.mcr
2) Edit and customize the env.mcr file.
A) The default architecture is GPFS_ARCH_I386. Only modify the
architecture choice if your platform is not Intel 32-bit based (IA32).
B) Modify the Linux distribution choice according to the software
distribution your machine runs.
C) Modify the LINUX_KERNEL_VERSION according to the Linux kernel
level you are using with your software distribution.
D) Note also that the kernel header file search path,
KERNEL_BUILD_DIR, is by default /lib/modules/`uname -r`/build
Customers who have their kernel source in a different directory
will need to modify KERNEL_BUILD_DIR.
YOU MUST HAVE READ ACCESS TO THESE FILES!
3) cd /usr/lpp/mmfs/src or
for BGP IO nodes only, cd /bgsys/drivers/ppcfloor/linux/OS/usr/lpp/mmfs/src
4) make World
All of the libraries and binaries reside in the "bin" subdirectory after the
build. Kernel modules however are in the "gpl-linux" subdirectory.
To install the Linux portability interface for GPFS
--------------------------------------------------------------------------
This step installs the binaries for the portability interface.
1) su
2) make InstallImages
配置root用户的2个节点相互信任关系,建立互信关系请参考文章开始
配置gpfs
192.168.1.201 db21.mydb2.com db21
192.168.1.202 db22.mydb2.com db22
在1.201配置
在/tmp创建2个配置文件
cat /tmp/gpfs_node
db21:quorum-manager
db22:client-nonquorum
cat /tmp/gpfs_disk
/dev/sdb:db21:db22:dataAndMetadata::GPFSNSD1
/usr/lpp/mmfs/bin/mmcrcluster -n /tmp/gpfs_node -p db21.mydb2.com -s db22.mydb2.com -r /usr/bin/ssh -R /usr/bin/scp
如果配置出现问题可以使用 /usr/lpp/mmfs/bin/mmdelnode -f //安装出现问题 删除节点重新手动配置gpfs
/usr/lpp/mmfs/bin/mmchlicense server --accept -N db21,db22 --注册
/usr/lpp/mmfs/bin/mmcrnsd -F /tmp/gpfs_disk -v no --创建nsd盘
/usr/lpp/mmfs/bin/mmstartup -a
/usr/lpp/mmfs/bin/mmgetstate -a
gpfs启动时候报错的日志cd /var/adm/ras
查看NSD
/usr/lpp/mmfs/bin/mmlsnsd -L
查看集群
/usr/lpp/mmfs/bin/mmlscluster
启动GPFS
/usr/lpp/mmfs/bin/mmstartup -a
删除NSD盘
/usr/lpp/mmfs/bin/mmdelnsd GPFSND1
创建文件系统
/usr/lpp/mmfs/bin/mmcrfs GPFSNSD1 "GPFSNSD1" -B 256K -T /db2fs -v no
2节点执行
mount /db2fs --挂着/db2fs
mkdir -p /db2fs/db2home/db2fenc
mkdir -p /db2fs/db2home/db2inst
创建用户
1节点
groupadd -g 1000 db2iadm
groupadd -g 1001 db2fadm
useradd -u 11000 -g db2iadm -m -d /db2fs/home/db2inst db2inst
useradd -u 11001 -g db2fadm -m -d /db2fs/home/db2fenc db2fenc
chown -R db2inst:db2iadm /db2fs/home/db2inst
chown -R db2fenc:db2fadm /db2fs/home/db2fenc
2节点
groupadd -g 1000 db2iadm
groupadd -g 1001 db2fadm
useradd -u 11000 -g db2iadm -d /db2fs/home/db2inst db2inst
useradd -u 11001 -g db2fadm -d /db2fs/home/db2fenc db2fenc
chown -R db2inst:db2iadm /db2fs/home/db2inst
chown -R db2fenc:db2fadm /db2fs/home/db2fenc
配置db2inst
On db21
cd ~
mkdir ~/.ssh
chmod 700 ~/.ssh
ssh-keygen -t rsa
cat id_rsa.pub >>authorized_keys
ssh db21 date
ssh db22 date
ssh db21.mydb2.com date
ssh db22.mydb2.com date
创建实例
/db2/instance/db2icrt -s ese -p 50000 -u db2fenc db2inst
修改db2nodes.cfg
cd /db2fs/home/db2inst/sqllib
vi db2nodes.cfg
0 db21 0
1 db21 1
3 db22 0
4 db22 1
2个节点修改 /etc/services
db2c_db2inst 50000/tcp
DB2_db2inst 60000/tcp
DB2_db2inst _1 60001tcp
DB2_db2inst_2 60002/tcp
DB2_db2inst_3 60003/tcp
DB2_db2inst_4 60004/tcp
DB2_db2inst_END 60005/tcp
修改svcename 2个节点都修改
db2 update dbm cfg using svcename db2c_db2inst
修改注册变量
db2set DB2COMM=TCPIP
db2set DB2RSHCMD=/usr/bin/ssh
db2set DB2_ANTIJOIN=Y
db2set DB2_EXTENDED_OPTIMIZATION=ON
db2set DB2_PARALLEL_IO=*:3
db2set DB2_COMPATIBILITY_VECTOR=ORA
修改实例变量
db2 update dbm cfg using sheapthres 2500000 (数据仓库排序较多)
db2 update dbm cfg using FCM_NUM_BUFFERS automatic
db2stop
db2start
创建数据库
db2 CREATE DATABASE testdb
修改日志路径
db2inst@db21:~> mkdir -p /db2fs/log/db2inst
db2inst@db21:~> mkdir -p db2fs/mlog/db2inst
db2inst@db21:~> mkdir -p /db2fs/logarch/db2inst
db2 connect to testdb
db2 update db cfg using newlogpath /db2fs/log/db2inst
db2inst@db21:~> db2 LIST DATABASE DIRECTORY
System Database Directory
Number of entries in the directory = 1
Database 1 entry:
Database alias = TESTDB
Database name = TESTDB
Local database directory = /db2fs/home/db2inst
Database release level = f.00
Comment =
Directory entry type = Indirect
Catalog database partition number = 0
Alternate server hostname =
Alternate server port number =
db2inst@db21:~>
db2inst@db21:~>
切换分区
db2inst@db21:~> export DB2NODE=2
db2inst@db21:~> db2 terminate
DB20000I The TERMINATE command completed successfully.
db2inst@db21:~>
db2inst@db21:~> db2 connect to testdb
SQL1469N Instance "db2inst" (database partition number "0") does not have
node "2" specified in its db2nodes.cfg file. SQLSTATE=08004
db2inst@db21:~> export DB2NODE=1
db2inst@db21:~> db2 terminate
DB20000I The TERMINATE command completed successfully.
db2inst@db21:~> db2 connect to testdb
Database Connection Information
Database server = DB2/LINUXX8664 10.1.0
SQL authorization ID = DB2INST
Local database alias = TESTDB
db2inst@db21:~> db2 "values (current dbpartitionnum)"
1
-----------
1
1 record(s) selected.
db2inst@db21:~>
db2inst@db21:~>
添加新评论0 条评论