INformIX-OnLine客户服务器结构建立方及单机运行
2009-05-13 01:10:24来源:未知 阅读 ()
1建立基于客户服务器结构的应用程序
INFORMIX-OnLine7.1是面向大规模联机事务处理,支持决策应用的高性能的数据库系统,不但具有分布式数据处理功能,还支持客户服务器结构的应用。
我们使用的服务器是HPE25小型机,操作系统是HP_UX9.04,安装OnLine7.1。由于OnLine6.0以上都已内嵌Star,所以不必再安装。客户机为HPNetServerLD,&127;操作系统是SCOOpenServer5.04,安装OnLine5.0和传输模块INFORMIX-Net。客户机运行用ESQL/C编写的业务程序,用这样的语句打开服务器上的数据库cbdb:&127;$databaseicbd@bacct_qz;。
其中acct_qz为服务器的主机名,然后调用存放在数据库系统表中的存储过程来实现整个业务系统,&127;使用存储过程可以减少网络的传输量,当然也可以直接使用SQL语句对数据库进行操作。服务器和客户机上都要建立icbacct用户作为信任用户,用户标识号可以不同。客户机上使用INFORMIX传输模块Net提供的sqlrmtlitcp程序,在用户icbacct的.profile文件中要输出环境变量:&127;SQLEXEC=$INFORMIXDIR/lib/sqlrmtlitcp。
因为INFORMIX-OnLine数据库系统的安全性能依赖于TCP/IP网络协议,所以服务器一般不要在/etc/hosts.equiv文件中配置客户机的主机名,可以仅让客户机上的icbacct用户成为信任用户,方法是在服务器的icbacct用户根目录下的.rhosts文件中登记客户机的主机名acct_ha,同时也要在客户机上的icbacct用户根目录下的.rhosts文件登记服务器的主机名acct_qz。这样在客户机上以icbacct用户登录后就可以运行业务程序,还可以用isql直接访问数据库,其他用户如informix用户由于不是可信任的用户就不能访问数据库。由于TCP/IP在检查信任用户时是将所有用户的.rhosts文件追加在/etc/hosts.equiv文件后面一起判断的,所以如果将服务器上的用户icbacct的.rhosts文件的内容改为如下:
"acct_hainformix",就可以让客户机acct_ha的informix用户也能访问数据库。
数据库名字有两种格式,一是"数据库名@服务器主机名",在客户机上使用。比如在客户机上以icbacct用户登录后,在使用isql修改数据时输入数据库名"icbdb@acct_qz",其中acct_qz为服务器的主机名。二是"数据库名@数据库服务器名",在服务器acct_qz上使用。比如在服务器上运行的数据库服务器的名字是acct_online,则数据库名是icbdb@acct_online。服务器用户icbacct的.profile文件要输出环境变量INFORMIXSERVER=acct_online。
上述两个数据库名实际上指的都是同一个数据库。
从以上分析不难看出,客户服务器结构在安全上也存在一个隐患,当所有县支行的数据都集中到市行后,在任何一个县行的客户机上都可直接用isql修改其他行处的数据,当然必须以可信任的用户比如icbacct用户登录后方可实现。
┌──────┐数据服务器名:acct_online
│ONLINE7.1│主机名:acct_qz
│(内嵌Star)│(服务器)
└┬───┬─┘DDN,TCP/IP
┌───┘└─────┐
┌──┴──┐┌──┴──┐
│ONLINE5.0│主机名:acct_ha│ONLINE5.0│主机名:acct_xx
│I-Net│(客户机1)│I-Net│(客户机2)
└─────┘└─────┘
图1客户服务器结构的网络拓扑图
比如一台服务器和两台客户机以TCP/IP网络连接在一起(图1),在服务器上建立数据库服务器cct_online,在$INFORMIXDIR/etc/sqlhosts文件中命名。在/etc/services文件中定义了服务名sqlexec及该服务占用的端口号和所采用的协议类型,如2000/tcp表示占用2000号端口,协议类型为TCP。下面以服务器主机acct_qz为例来加以说明:
①文件/etc/hosts:
#netaddresshostnamehostalias
10.168.100.3acct_qzhost1_alias
10.168.106.1acct_hahost2_alias
10.168.107.1acct_xxhost3_alias
标签:
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有
- Linux系统如何设置开机自动运行脚本? 2020-06-11
- 运行 docker .... 命令报错 2020-06-10
- MPI 本地局域网运行多机配置,同时运行多个程序; 2020-06-02
- 如何重复执行一条命令直至运行成功? 2020-05-26
- Linux的运行等级与目标 2020-05-25
IDC资讯: 主机资讯 注册资讯 托管资讯 vps资讯 网站建设
网站运营: 建站经验 策划盈利 搜索优化 网站推广 免费资源
网络编程: Asp.Net编程 Asp编程 Php编程 Xml编程 Access Mssql Mysql 其它
服务器技术: Web服务器 Ftp服务器 Mail服务器 Dns服务器 安全防护
软件技巧: 其它软件 Word Excel Powerpoint Ghost Vista QQ空间 QQ FlashGet 迅雷
网页制作: FrontPages Dreamweaver Javascript css photoshop fireworks Flash