接触domino技术已经快2年的时间,在使用domino技术开发桌面应用程序过程中,发现domino技术体系唯一的缺陷就是在8.5以前的版本中不具备关系型数据库的事物服务,导致应用文档数据库与关系数据库数据不一致,无法应用统计系统。为此我在开发一个应用项目统计的时候,为了修正数据库数据花费我一个月的时间,视力直线下降,不得不带上眼镜。
后来我公司为了解决此问题,采用了 domino8.5版本,此版本据我了解已经增加了2个特性:事物特性与邮件撤销特性。
因为在实际应用中,客户经常因为邮件发错了,需要撤销,在没有具备此特性的做法是管理员,进入每一个用户邮箱中去删除。
从而将文档数据库与关系数据库很好的集合起来,让两种不同的关系数据库很好的结合起来,形成了一个强大的开发平台。
domino8.5技术如何实现事务功能,直接与关系数据库集成?主要是通过DB2Access服务技术。DB2Access技术可以看做成文档数据库与关系数据库的一个借口或中间件。只要在 domino服务器中启用DB2Access服务,就可以实现自动实现文档数据与关系数据同步功能。
现在分析具体如何在 domino服务器中启用DB2Access服务。
首先,要安装DB29.X版本的数据库。
其次,安装DB2Access服务器。
再次,在Domino服务器中启用DB2Access。
安装DB2Access服务器的具体步骤如下图所示:
DB2ACCESS服务安装说明
Example:Server2/GUIGANG/FYNET/CN安装DB2Access服务
安装DB2ACCESS服务,大体分为两个步骤,首先在需要启用DB2的Domino服务器中注册一个新的DB2ACCESS的服务器id,然后用这个注册的服务器id来配置DB2ACCESS服务即可。
一、注册DB2ACCESS服务器专用id:
打开Domino服务器的administrator管理器,找到注册新服务器的配置界面,如下图:
图1
图2
图3
在右边,点击注册一个新的服务器,然后输入服务器名称,验证者标识符,如下图,点击“确定”。
点击“确定”,要输入验证者标识符对应的密码,如果密码正确,就会出现如下图所示的界面:
点击“继续”按钮即可。
然后出现注册DB2ACCESS服务器的详细的配置对话框,在这里特别要注意的是以下几点:
首先,点击左边的“高级”属性,把“此服务器只用做DB2ACCESS服务器”这个打勾,如下图:
然后,切换到“基本”属性,输入服务器名称“DB2ACCESS”,注册生成的服务器id要选择一个硬盘里面已经存在的目录保存下来,以便以后要使用,其他保持默认即可。这个id和其他的服务器上的id放在同样的目录下就可以了。例如 D:/ids目录。
然后点击右下角那个确认信息的绿色的勾的那个小按钮“ ”,这样注册的服务器信息就保存了下来。如下图:
点击“注册”按钮,系统就开始注册一个新的服务器了,等一下就可以了。等系统注册成功后,关闭这个对话框就可以了。
为了确认注册成功,可以打开服务器通讯录names.nsf,可以看到所有的服务器文档视图里面就多了一个DB2ACCESS服务器的配置文档了。
二、安装DB2ACCESS服务器软件。
双击DB2ACCESS安装软件,等安装程序自身初始化完毕,然后点击“NEXT”,如下图:
选择“我接受协议”,点击“NEXT”,如下图:
安装程序自身会自动定位到DB2服务器的function目录下,这个目录不要手工修改,保持系统默认即可,否则会导致连接不了DB2。如下图,点击“NEXT”:
然后在出现的下个界面上,选择前面第一步注册的DB2ACCESS服务器专用id,首先将D:/ids/db2acces.id拷贝到D:/IBM/SQLLIB/FUNCTION/ ,如下图所示:可以点击“Browse”按钮来浏览定位的
选择id以后,点击“Next”,这时,安装程序已经准备完毕,点击“Next”就开始安装了。如下图:
点击“Finish”就安装结束了。
在Domino中启用DB2
一、先安装DB2v9.1.5并正常启动,检查DB2是否正常启动。
二、再安装Dominov8.5.1并正常启动。说明:启用DB2Access服务一定要开启事物记录功能。如果Domino没有设置事务记录,则必须首先设置事务记录为循环或归档事务记录,为了增强Domino服务器的性能,事务记录的日志目录必须要放在完全和Domino安装程序目录不同的另一个硬盘上。设置事务记录以后,要连续重新启动Domino服务器两次。这样才可以正常使用事务记录。
三、然后安装DB2ACCESS服务器并正常启动。
四、打开windows的管理工具中的计算机管理,添加一个用户DBA
如图:
1. 设置密码和设置属性(a$sk6G7),如图:
创建完 DBA 用户后,点击 “关闭”
新建一个组名:DB2DOM,DB2DOM组中要添加三个用户,一个是windows的管理员,administrator,一个是db2的管理员db2admin,一个是刚刚创建的普通用户DBA。如下图:
1.按(添加)
2.按 高级
3.按 立即查找,一个是windows的管理员,administrator,一个是db2的管理员db2admin,一个是刚刚创建的普通用户DBA ,创建完成后点击 关闭
最后效果图如下:
五、把DB2DOM组添加到DB2实例中的SYSCTRL_GROUP权限和SYSADM_GROUP权限中。
a、打开db2的 命令行处理器
运行命令“ get dbm cfg ”,来查看DB2DOM是否在
SYSCTRL_GROUP组和SYSADM_GROUP组中。
b、如果存在就可以退出db2命令处理器了,如果不存在,则运行以下命令添加:
“ update dbm cfg using SYSCTRL_GROUP DB2DOM”
“ update dbm cfg using SYSADM_GROUP DB2DOM”
c、输入命令 “ db2stop ”,“db2start”来重新启动DB2。
如图:
运行命令“ get dbm cfg ”,来查看DB2DOM是否在
重新启动计算机,当重启完计算机后,关闭服务器,然后再启动。
六、打开Domino的administrator管理器界面,找到配置页面,在右下角展开DB2服务器配置栏目信息,以下所有的操作都在这个栏目下进行。
a、“为DB2启用服务器”。
点击“为DB2启用服务器”,如果Domino没有设置事务记录,则提示没有设置事务记录无法启用DB2的提示,
设置循环事务记录以后,则弹出如下界面:
参数说明:
实例名称:DB2
数据存储目录:硬盘上一个指定的目录,例如D:/DB2/DB2Domino
数据库名称:对应法院的数据库名称,例如 GGDOMINO.
访问db2的操作系统名称: db2admin
密码为 db2admin 的密码(a$sk6G7),密码到期日期为 0 天。
输入确认后,点击最下面的按钮“ ”,则系统自动会配置db2,而且会启动Server2服务器
如果Domino在重新启动以后,有很多的错误提示,则需要按照错误提示,重新纠正前面的配置部分。如果配置正确,重新启动的时候是没有错误提示的,然后打开db2控制中心就可以看到多了一个数据库出来,同时打开Domino服务器上的log.nsf日志库,查看Domino的日志,是否有错误提示记录下来。
b、“编辑DB2登陆信息”
如果有需要修改Domino访问DB2的操作系统用户信息,则修改这里的信息即可。
c、“编辑DB2缺省用户”
这个用户就是DBA用户,是普通的访问数据和视图等等信息的用户,把下面的勾选中,作为整个Domino服务器上的缺省用户。
d、“启用DB2ACCESS”
点击“启用DB2ACCESS”,在弹出的对话框中输入DB2ACCESS的服务器名称(DB2ACCESS/Fynet/CN)下图:
点击“确定”以后,Domino服务器自动进行设置,稍等一下,就会出现如下图所示的界面,如果配置没有问题,则如下图所示的样子,如果有错误,则要根据错误提示,进行纠正。
点击“确定”,关闭这个窗口即可。
e、“测试DB2ACCESS”
点击后,会弹出测试结果,如下图:
f、给AdminGuiGang 人员设置DB2用户名,点击设置DB2用户名,在对话框缺省格式选择:
输入离散名称,独立的名称输入:DBA,最后点 确定。具体操作如下图:
最后做如图修改:
所有的配置完成以后,重新启动一下计算机。
必须保证db2服务启动完成以后,再启动Server2服务器。
七、 给Server2服务分配setsessionuser 权限。这个是使用sql查询视图必须要执行下面这些命令的:
打开db2 命令行处理器窗口,依次输入下列命令:
connect to FCDOMINO user db2admin using a$sk6G7
grant secadm on database to user DBA
connect to FCDOMINO user DBA using a$sk6G7
grant SETSESSIONUSER on public to group DB2DOM
db2set -i DB2 DB2_ALLOW_SETAUTH_WITH_REMOTECONNECT=1
DB2 UPDATE DBM CFG USING FEDERATED YES DEFERRED
八、启用DB2实例联合数据支持:
打开db2 命令窗口,运行命令:
db2set -i DB2 DB2_ALLOW_SETAUTH_WITH_REMOTECONNECT=1
运行命令以后,可以使用
运行命令:db2set 来查看环境变量的值。
运行命令:
DB2 UPDATE DBM CFG USING FEDERATED YES DEFERRED
然后重启DB2,先点击 停止(DB2),再 点击 启动(DB2)