文本版|topic 高级搜索
   名人堂 帮助 论坛制度 意见反馈 | 首页 博客 周新贴 专题 求职 读书
RSS 底部
 
社区导航: 专家门诊   网络技术   操作系统   数据库   程序设计   系统应用   考试认证   CIO及信息化   站长交流   综合交流   下载基地  51CTO产品服务 设为首页 | 收藏本站
51CTO技术论坛» DB2 » [原创]在vmware虚拟机上配置linux多分区数据库环境       [ 打印]  [ 订阅]  [ 收藏]  [ 推荐给朋友]   [ 本帖文本页]

论坛跳转:
     
标题: [转载] [原创]在vmware虚拟机上配置linux多分区数据库环境   ( 查看:681  回复:0 )   
  本主题由 apple_q 于 2006-11-22 17:19 移动  
 
一剑倾城
学徒工  点击可查看详细



帖子 16777215
精华 0
无忧币 -16
积分 -3
阅读权限 10
注册日期 2006-11-6
最后登录 2008-6-19 离线

[查看资料]  [发短消息
       
发表于:2006-11-14 15:12   标题:[原创]在vmware虚拟机上配置linux多分区数据库环境
上一帖 |
前段时间用vmware加linux配置了db2的多分区环境来作一些试验和研究,顺便把安装过程也记录下来了,供有兴趣的同志们参考。

如果没有充足的硬件资源,其实用vmware来配置多分区环境作研究和学习是个不错的选择,而且vmware还可以很容易的克隆出另外一台机,省去了很多安装和配置过程,你还可以把你的虚拟机拷贝到移动硬盘上带着到处走,方便的很啊。

Linux我用了redhat 9和redhat el as4,都可以,而且还可以一个分区用redhat9,一个分区用redhat el as4,没问题,只是redhat el as4的配置要稍微麻烦点。

以下用两台虚拟机都是redhat 9为例来说明:

环境

Host OS:Windows XP  2 (P42.5G,1G mem)

Vmware Workstation 5.5.1 build-19175

虚拟机Linux:

redhat1(192.168.49.128):Redhat 9(Linux redhat1 2.4.20-8 #1 Thu Mar 13 17:54:28 EST 2003 i686 i686 i386 GNU/Linux)

redhat2(192.168.49.129):Redhat 9(Linux redhat1 2.4.20-8 #1 Thu Mar 13 17:54:28 EST 2003 i686 i686 i386 GNU/Linux)



操作步骤:

0.在Windows上安装vmware workstation,并创建一个Redhat Linux的虚拟机redhat1,网络选Bridge方式,内存配了512M。

1.安装虚拟机上安装OS。

2.将rsh和nfs服务改为自动启动

vi /etc/xinetd.d/rsh,将disable改为no

vi /etc/xinetd.d/rlogin,将disable改为no

vi /etc/hosts

127.0.0.1       localhost.localdomain   localhost   (不能包含redhat1,缺省是有的,千万记得改这里,偶可是折腾了半天才找到这里的问题,详见后面注意事项)

192.168.49.128   redhat1

192.168.49.129   redhat2

service xinetd restart

3.新增用户和组

[root@redhat1 root]# groupadd -g 1000 db2grp1

[root@redhat1 root]# groupadd -g 2000 db2fenc1

[root@redhat1 root]# groupadd -g 3000 dasgrp1



[root@redhat1 root]# useradd -u 1001 -g db2grp1 -m -d /home/db2i t1 db2i t1 -p pa word

[root@redhat1 root]# useradd -u 2001 -g db2fenc1 -m -d /home/db2fenc1 db2fenc1 -p pa word

[root@redhat1 root]# useradd -u 3001 -g dasgrp1 -m -d /home/dasusr1 dasusr1 -p pa word



[root@redhat1 root]# pa wd db2i t1

[root@redhat1 root]# pa wd db2fenc1

[root@redhat1 root]# pa wd dasusr1



4.安装DB2产品,若有补丁,则打补丁

[root@redhat1 root]# ./db2_i tall

此安装将以rpm方式安装db2产品,但不做任何配置(偶推荐这种方式,简单快捷),安装目录是/opt/IBM/db2/V8.1

添加lice e(自己找哦):

[root@redhat1 root]$ /opt/IBM/db2/V8.1/adm/db2licm -a /mnt/cdrom/db2/lice e/db2ese.lic

5.克隆另一台虚拟机

利用vmware的克隆功能克隆出另一台虚拟机redhat2,ip地址改为192.168.49.129,主机名改为redhat2



6.在redhat1上创建实例和配置db2i t1

[root@redhat1 root]# /opt/IBM/db2/V8.1/i tance/db2icrt -a SERVER -s ese -u db2fenc1 db2i t1



[root@redhat1 root]# /opt/IBM/db2/V8.1/cfg/db2ln



在/etc/service文件中添加一行:

db2c_db2i t1   50000/tcp #DB2 co ection service port



[root@redhat1 root]# su - db2i t1

[db2i t1@redhat1 db2i t1]$ db2 "update dbm cfg using SVCENAME db2c_db2i t1"

[db2i t1@redhat1 db2i t1]$ db2 "update dbm cfg using dftd ath /db2data/database"



[db2i t1@redhat1 db2i t1]$ db2set DB2COMM=TCPIP



[root@redhat1 root]# /opt/IBM/db2/V8.1/i tance/dascrt -u dasusr1

SQL4406W  The DB2 Administration Server was started succe fully.

DBI1070I Program dascrt completed succe fully.  



[root@redhat1 root]# xhost +

acce  control disabled, clients can co ect from any host

[root@redhat1 root]# su - db2i t1

[db2i t1@redhat1 db2i t1]$ db2cc

控制中心可正常运行





7.配置NFS:

在redhat1(NFS server):

vi /etc/exports,添加一行:

/home/db2i t1  redhat2(rw,no_root_squash,sync)

service nfs restart



在redhat2(NFS client):

vi /etc/fstab,添加一行:

redhat1:/home/db2i t1  /home/db2i t1          nfs     rw,timeo=300,retra =5,hard,intr,bg,suid



测试NFS:

在redhat2上:

[root@redhat2 root]# showmount -e redhat1

Export list for redhat1:

/home/db2i t1 redhat2

[root@redhat2 root]# mount /home/db2i t1



8.配置rsh:

在redhat1上:

su - db2i t1

vi $HOME/.rhosts

redhat1 db2i t1

redhat2 db2i t1



在redhat2上:

su - db2i t1

vi $HOME/.rhosts

redhat1 db2i t1

redhat2 db2i t1

测试rsh:

rsh redhat1 date

rsh redhat2 date

rlogin redhat1

rlogin redhat2



9.配置redhat2的DB2环境

redhat2的db2是通过NFS共享redhat1的/home/db2i t1实例目录,故redhat2不用创建db2实例,只要

修改/etc/services文件:

DB2_db2i t1    60000/tcp

DB2_db2i t1_1  60001/tcp

DB2_db2i t1_2  60002/tcp

DB2_db2i t1_END        60003/tcp

db2c_db2i t1   50000/tcp



10.配置多分区

vi /home/db2i t1/sqllib/db2nodes.cfg

0 redhat1 0

1 redhat1 1

2 redhat2 0

3 redhat2 1

创建了共4个分区,每台机两个逻辑分区。



vi /home/db2i t1/.profile,添加如下一行:

. /home/db2i t1/sqllib/db2profile



验证db2_all:

db2_all date



11.启动实例

db2start



12.创建数据库

db2 create database test



注意事项:

1、缺省在db2i t1的home目录下没有.profile文件,但是db2_all脚本会找$HOME/.profile文件设置db2环境,所以要手工创建这个文件,内容就是:

. /home/db2i t1/sqllib/db2profile

2、一定要将/etc/hosts文件中127.0.0.1中对应的主机名去掉(缺省是有的)

[db2i t1@redhat1 ~]$ netstat -an|egrep "6000|5000"

tcp        0      0 192.168.49.128:60000         0.0.0.0:*                   LISTEN      

tcp        0      0 192.168.49.128:60001         0.0.0.0:*                   LISTEN      

tcp        0      0 0.0.0.0:50000               0.0.0.0:*                   LISTEN      

确保60000和60001端口前是对外的IP地址而非localhost或127.0.0.1

这个非常重要,我就是因为hosts中127.0.0.1包含了redhat1,所以此处侦听的是127.0.0.1:60000,创建多分区数据库时失败,报错:

SQL1229N  The current tra action has been rolled back because of a system error.  SQLSTATE=40504

在db2diag.log中有fcm的错,郁闷了好久,直觉上应该是分区间通讯的问题,第二天不知哪里来的灵感,将redhat1从127.0.0.1这行中去掉,搞定。</ an></font>

       

       

        <i>由 ctcome 于 06-09-01 14:01 最后编辑</i>

2006-11-14 15:121楼
[ 顶部 ]
     
论坛跳转:  

| | |

标记已读 · 删除论坛Cookies · 文本版 · WAP
 
| 诚征版主 | 版主堂 | 意见建议 | 大史记 | 论坛地图
Copyright©2005-2008 51CTO.COM  Powered by Discuz!
本论坛言论纯属发布者个人意见,不代表51CTO网站立场!如有疑义,请与管理员联系。
京ICP备05051492号