软件开发

DB2的实例、活动实例、节点是什么关系?

在Windows上可以创建多个DB2实例,这些实例是以服务的形式存在的,这些服务可以同时启动,但是DB2有个环境变量,DB2INSTANCE设置的是DB2活动实例,可以用db2 get instance这个命令查看当前活动实例,并且可以用SET DB2INSTANCE=XXX 修改当前活动实例,请问这个活动实例有什么作用,既然...显示全部
在Windows上可以创建多个DB2实例,这些实例是以服务的形式存在的,这些服务可以同时启动,但是DB2有个环境变量,DB2INSTANCE设置的是DB2活动实例,可以用
db2 get instance
这个命令查看当前活动实例,并且可以用SET DB2INSTANCE=XXX 修改当前活动实例,

请问这个活动实例有什么作用,既然所有的实例都是win服务,又可以同时启动,那么活动实例有什么特殊的吗??
还有节点这个概念,我理解应该是在实例之上的,是用来编目远程DB2实例、数据库的,那么为什么DBNODIR在实例文件夹里面??如下图:

节点.jpg





如果当前活动实例是DB2,执行完catalog node命令之后,只能在DB2作为活动实例时,执行DB2 list node directory命令,会显示出node列表
如果我将活动实例切换到另一个实例,再执行DB2 list node directory命令,抛出如下异常:

C:Documents and SettingsLZC>db2 list node directory
SQL1027N  找不到节点目录。


节点不是应该在实例之上吗,那么为什么我切换了活动实例,节点就显示不出来了呢????收起
参与12

查看其它 10 个回答sunyangnj的回答

sunyangnjsunyangnj技术经理苏宁金融研究院
db2instance是win特有的,因为linux/unix下面,只要切换到用户,就是在使用该用户对应的实例,发出的命令都是针对于该实力的.
但是在win下,用户和实例没什么关系,所以需要设置该变量,以便指定更改的实例对象.
db2instance和活动实例概念不一样, win下也可能有多个实例,虽然只配置一个实例到db2instance,其他实例也可能是活动的.
db2中的node就是实例级别服务信息, 主要是给访问远程数据库使用的,负责在本地登记远程数据库所在IP,实例所使用端口,协议号,还有可能的用户细心你等.
远程node是针对于实例而言的, 你把inst2编目到inst1下面,这样就在inst1下面有inst2对应的node信息,而inst3实例因为没有编目inst2,所以自然没有inst2的信息.
金融其它 · 2013-10-18
浏览1533

回答者

sunyangnj
技术经理苏宁金融研究院
擅长领域: 服务器分布式系统区块链

sunyangnj 最近回答过的问题

回答状态

  • 发布时间:2013-10-18
  • 关注会员:1 人
  • 回答浏览:1533
  • X社区推广