榮博
Informix關(guān)系數(shù)據(jù)庫管理系統(tǒng)是一個跨平臺、全功能的RDBMS,后改造為ORDBMS,它具有各種特性,并且能夠十分方便地與各種GUI前端工具相連接。目前Informix數(shù)據(jù)庫產(chǎn)品在我國的金融和保險行業(yè)有著廣泛的應(yīng)用。Linux是當(dāng)今非常流行的一種操作系統(tǒng),功能強大,源碼公開,可以方便地構(gòu)建自己個性化的網(wǎng)絡(luò)服務(wù)器。Informix企業(yè)級數(shù)據(jù)庫管理系統(tǒng)Informix On-Line Dynamic Server、中小型數(shù)據(jù)庫管理系統(tǒng)Informix SE、面向C語言的開發(fā)工具ESQL/C、快速開發(fā)工具4GL等一系列產(chǎn)品都能運行在Linux平臺上。下面介紹一下如何搭建基于Linux的小型Informix客戶機/服務(wù)器方式數(shù)據(jù)庫開發(fā)環(huán)境。
軟件環(huán)境
Linux:RedHat Linux 6.0,別的版本大家可以自己試一下。如果您使用的是Slackware、Debian或其它版本的Linux,那么就請您選擇專門為這些版本設(shè)計的Informix產(chǎn)品。
數(shù)據(jù)庫:Informix-SE 7.24.UC5&& ESQL/C Bundle On Linux;Informix Client 2.50.TD1。
硬件環(huán)境
服務(wù)器:因為數(shù)據(jù)庫服務(wù)器需要處理的是大量的數(shù)據(jù)操作,所以對硬件有較高的要求。我們選用的配置是PⅢ800MHz處理器、128M的內(nèi)存、20G Quntum FireBall硬盤、Realtek 8139 10/100M自適應(yīng)網(wǎng)卡。
客戶機:賽揚433MHz處理器、64M內(nèi)存、6G的Seagate硬盤、Realtek 8139 10/100M自適應(yīng)網(wǎng)卡。
網(wǎng)線和集線器:如果開發(fā)基于主機/字符終端方式信息系統(tǒng),還需要配置多用戶卡和終端機。多用戶卡可以選用Startec C9531或其它兼容Linux的多用戶卡。
準備工作
1)首先組建局域網(wǎng),然后在服務(wù)器上安裝 RedHat Linux 6.0 ,配置網(wǎng)絡(luò)(在以下步驟我們假設(shè)服務(wù)器名為db_server);
2)根據(jù)需要選擇在客戶機上安裝Windows95 或者Linux ,配置網(wǎng)絡(luò);
3)確??蛻魴C與服務(wù)器之間可以相互Ping通;
4)修改Linux系統(tǒng)/etc目錄下的hosts文件,Windows系統(tǒng)\Windows目錄下的hosts 文件,添加局域網(wǎng)內(nèi)計算機的IP地址和主機名稱的信息,配置好網(wǎng)絡(luò)通信文件;
5)配置服務(wù)器端 /etc/目錄下的hosts.equiv 文件。網(wǎng)絡(luò)中的主機名稱包含域名,比如“db_server.Informix.net”,但是在該主機上用來表示自己的名稱是“db_server”。如果不能確定的話,那么就把以上兩種格式的名稱一起添加到/etc/目錄下的hosts.equiv文件里。
安裝Informix-SE套件
Informix-SE套件包括ESQL/C、Informix-SE和I-connect。
1)在服務(wù)器上用“root”用戶注冊。
2)創(chuàng)建Informix組,執(zhí)行操作:
#groupadd -g 777 Informix(假設(shè)Informix組的編號為777)
3)創(chuàng)建Informix用戶,執(zhí)行操作:
#useradd-u 777-g Informix Informix(建立了一個隸屬于Informix組,用戶編號為777的用戶Informix)
4)創(chuàng)建dba用戶,dba用戶的作用主要是創(chuàng)建、維護和管理用戶的數(shù)據(jù)庫。為了安全起見,最好不要把dba用戶當(dāng)作Informix組中的成員。
5)創(chuàng)建Informix產(chǎn)品的安裝目錄:
#mkdir /usr/Informix
#chown Informix.Informix /usr/Informix
#chmod 755 /usr/Informix
6)設(shè)置環(huán)境變量:
#export INFORMIXDIR=/usr/Informix,然后把$INFORMIXDIR/bin加入到程序的搜索路徑中,安裝程序需要用它來查找所需的文件,#export PATH=$PATH:$INFORMIXDIR/bin。
7)安裝ESQL/C,從Internet上下載的Informix產(chǎn)品,假設(shè)文件存放在/mnt/cdrom目錄下,執(zhí)行操作:
#cd /usr/Informix
#tar xvf /mnt/cdrom/esqlc/esqlc.tar
8)執(zhí)行安裝程序:
#./installesql
9)安裝Informix-SE,進入安裝目錄,展開SE.TAR,執(zhí)行操作:
#cd /usr/Informix
#tar xvf /mnt/cdrom/esqlc/se.tar
10)執(zhí)行安裝程序:
#./installs0e
配置數(shù)據(jù)庫服務(wù)器
1)配置/etc/services文件。
/etc/services文件包含了服務(wù)器所提供的各種服務(wù)的信息。文件由服務(wù)名稱、端口/協(xié)議、服務(wù)別名三個字段組成。定義數(shù)據(jù)庫服務(wù)可以讓網(wǎng)絡(luò)上的客戶端軟件通過該端口與數(shù)據(jù)庫服務(wù)器建立連接。下面的例子定義了一個使用TCP/IP協(xié)議,端口號為1536的服務(wù)。
servicename
port#/protocal
service-alias
informix_se
1536/tcp
2)配置sqlhosts文件。
$INFORMIXDIR/etc/sqlhosts文件中包含了客戶端訪問數(shù)據(jù)庫服務(wù)器所需要的信息。用文字編輯器打開它,你就會發(fā)現(xiàn)其中有一行文字的內(nèi)容為:
demo_se onipcshm on_hostname on_servicename
該行定義了一個Informix On_Line Dynamix Server的數(shù)據(jù)庫服務(wù)器,你需要把它刪除或者用“#”注釋起來。該文件由四個字段組成:數(shù)據(jù)庫服務(wù)器名稱、網(wǎng)絡(luò)類型、主機名稱和服務(wù)名稱。
下面給出的例子定義了兩個數(shù)據(jù)庫服務(wù)器,一個是通過未命名管道的本地數(shù)據(jù)庫,另一個是使用TCP/IP協(xié)議的網(wǎng)絡(luò)數(shù)據(jù)庫。
一個是通過未命名管道的本地數(shù)據(jù)庫,另一個是使用TCP/IP協(xié)議的網(wǎng)絡(luò)數(shù)據(jù)庫。
dbservername
netype
hostname
servicename
local
seipcpip
db_server
sqlexec
remotedb
sesoctcp
db_server
informix_se
連接客戶機與服務(wù)器
Linux 客戶端的配置如下:
1)安裝ICONNECT。Iconnect是Informix數(shù)據(jù)庫客戶端與服務(wù)器之間連接的橋梁,只有通過它提供的接口網(wǎng)絡(luò)客戶端程序,才能夠訪問數(shù)據(jù)庫引擎。ICONNECT的功能已經(jīng)包含在ESQLC和SE中,如果您的客戶端已經(jīng)安裝了ESQL/C或者INFORMIX-SE,那么完全可以跳過這一步。
進入Informix安裝目錄,展開ICONNECT.TAR,執(zhí)行如下操作:
#tar xvf/mnt/cdrom/ICONNECT/ICONNECT.TAR
執(zhí)行安裝程序:
#./installconn
按提示輸入軟件的序列號和許可證號后,按回車鍵完成安裝。
2)配置sqlhosts、services文件,方法同上。
Windows客戶端的配置過程如下:
1)安裝Informix Cli 2.5 For Windows。在Windows中連接Informix數(shù)據(jù)庫,且必須安裝Informix的客戶端軟件Informix Client For Windows。
2)修改Windows目錄下的Services文件,添加數(shù)據(jù)庫服務(wù)的信息。
3)在應(yīng)用程序中與Informix連接。Windows環(huán)境下的數(shù)據(jù)庫開發(fā)工具種類繁多,下面我們以應(yīng)用比較廣泛的Sybase公司的Powerbuilder為例,來簡單介紹一下如何在應(yīng)用程序中用代碼連接Informix數(shù)據(jù)庫。
首先聲明一個事務(wù),然后為該事務(wù)的參數(shù)賦值,最后用Connect語句連接數(shù)據(jù)庫。以下是一個在Powerbuiilder應(yīng)用程序中用代碼連接Informix數(shù)據(jù)庫的例子。
transaction INFORMIX
INFORMIX = CREATE transaction
//創(chuàng)建名為Informix的事務(wù)
INFORMIX.DBMS = "IN7 INFORMIX-7"
//數(shù)據(jù)庫類型
INFORMIX.Database = "stores7"
//數(shù)據(jù)庫名稱
INFORMIX.UserId = "dba"
//用戶名
INFORMIX.DBPass = "******"
//口令
INFORMIX.ServerName="db_server@Remotedb"
//數(shù)據(jù)庫服務(wù)器信息
INFORMIX.AutoCommit = False
//使PowerBuilder工作在事物處理模式之外
INFORMIX.DBParm="INET_SERVICE=Informix_se
INET_PROTOCOL=sesoctcp\"
//數(shù)據(jù)庫連接參數(shù)
CONNECT USING INFORMIX
//連接數(shù)據(jù)庫
Informix for Linux 產(chǎn)品的推出,為我們開發(fā)低成本、高性能的管理信息系統(tǒng)提供了一套切實可行的方案。
posted on 2007-03-19 09:55
還沒想好名 閱讀(505)
評論(0) 編輯 收藏