Windows下Tuxedo的安裝配置-資料庫補充
草木瓜 2006-5-28
一、序
《Windows下Tuxedo的安裝配置-資料庫》一文中介紹了通過XA方法串連資料庫,步驟比較多,當然也可以采
用另一種方法,在服務程式裡面直接寫入串連資料庫的命令。
二、服務端程式
小作修改
EXEC SQL BEGIN DECLARE SECTION;
VARCHAR ora_no[2];
VARCHAR ora_value[10];
VARCHAR ora_cn[30]; //新增
EXEC SQL END DECLARE SECTION;
EXEC SQL INCLUDE sqlca;
//新增以下內容,tpsvinit,tpsrdone是tuxedo預設構造和解構函式。
tpsvrinit()
{
strcpy(ora_cn.arr,"liwei/liwei@windb");
ora_cn.len = strlen(ora_cn.arr);
ora_cn.arr[ora_cn.len]='/0';
EXEC SQL CONNECT :ora_cn;
return(0);
}
tpsrvdone()
{
EXEC SQL COMMIT WORK RELEASE;
}
三、設定檔
注釋掉與XA相關項目,由於用戶端與伺服器是同一台機器,WSL要不要無所謂。這裡也注釋掉。
*GROUPS
GROUP1 LMID=lw GRPNO = 1
#OPENINFO="Oracle_XA:Oracle_XA+Acc=P/liwei/liwei+SqlNet=linux+SesTm=600+MaxCur=5+LogDir=."
#TMSNAME="TMS_ORA9i" TMSCOUNT=2
*SERVERS
server SRVGRP=GROUP1 SRVID=1
#WSL SRVGRP=GROUP1 SRVID =300
#CLOPT="-A -- -n //192.168.98.166:5898 -d/dev/tcp -m1 -M5 -x 10"
*SERVICES
DBREAD
四、編譯服務端的命令
修改如下:
proc server.pc include=%TUXDIR%/include
buildserver -o server -f server.c -s DBREAD -v
如果在編譯過程中出現error LNK2001: unresolved external symbol _sqlcxt類似的錯誤,那是因為
找不到orasql9.lib檔案。設定環境變數lib,加上e:/oracle/ora92/precomp/lib,修改命令:
buildserver -o server -f server.c -s DBREAD -v -l orasql9.lib
五、編譯config檔案,運行tmboot
六、補充說明
Tuxedo配置一般如下步驟:
1 設定環境變數。
2 準備服務端用戶端程式。
3 服務端用戶端編譯(buildclient buildserver)。
4 準備tuxedo的config檔案。
5 編譯config檔案(tmload)。
6 如果config檔案包含日誌,必須通過tmadmin組建記錄檔檔案(crdl,crlog),如出錯須將原記錄檔刪除。
7 啟動tuxedo服務(tmboot)。