解決區(qū)域網(wǎng)絡(luò)方面的連接問(wèn)題

字號(hào):

排除連接錯(cuò)誤
    C/S程序結(jié)構(gòu)的運(yùn)作就像是主人與仆人之間的互動(dòng)一樣,仆人偶爾會(huì)因溝通不良而抱怨。這種情況在C/S程序中即所謂的錯(cuò)誤信息(Error message ),每個(gè)錯(cuò)誤信息都包含了一個(gè)錯(cuò)誤代碼與描述問(wèn)題的說(shuō)明文字。由于各種程序的錯(cuò)誤處理方式不盡相同,所以當(dāng)我們?cè)谧龀e(cuò)工作之前,除了要參考錯(cuò)誤信息外,還應(yīng)當(dāng)注意下列幾個(gè)問(wèn)題,以掌握可能的原因,提高效率。
    錯(cuò)誤原因
    1:程序以往在執(zhí)行時(shí)是否曾成功建立連接關(guān)系?如果是,后來(lái)有沒(méi)有變更過(guò)什么設(shè)定?因?yàn)槿粼?jīng)連接成功的話,那么在設(shè)定、安全、通訊協(xié)議等方面應(yīng)該不會(huì)有問(wèn)題。之后,假如有安裝新版的應(yīng)用程序、操作系統(tǒng)后升級(jí)驅(qū)動(dòng)程序的話將影響連接情況。
    2:屏幕上顯示什么信息?Modem 或網(wǎng)絡(luò)卡的LED顯示是否正常?屏幕上的信息可以引導(dǎo)我們朝正確的方向排除錯(cuò)誤。Modem 或網(wǎng)絡(luò)卡的LED顯示網(wǎng)絡(luò)交通是否正常運(yùn)作。
    3:網(wǎng)絡(luò)是否已超出負(fù)荷?用戶是否搭錯(cuò)線,連接到其他的網(wǎng)絡(luò)?也有可能許多應(yīng)用系統(tǒng)一直站用網(wǎng)絡(luò)資源造成網(wǎng)絡(luò)異常。
    4: 碰到錯(cuò)誤時(shí)、程序有沒(méi)有做除錯(cuò)措施或者直接關(guān)機(jī)。
    程序庫(kù)所引發(fā)的連接問(wèn)題很多問(wèn)題的發(fā)生都因?yàn)閯?dòng)態(tài)連接程序庫(kù)(DLL)或控制元件(Control,即OCX),存放到其它目錄或者根本沒(méi)有安裝到系統(tǒng)中,或由于安裝了新版的ODBC 而覆蓋掉舊版的ODBC所引起的。他們必須被放置到程序載入器(WIndows loader)在執(zhí)行期間能找到的地方,一般在Windows\system之下,而且這些程序應(yīng)該在系統(tǒng)注冊(cè)、安裝,而不是直接放置到該目錄就可以。
    所有Windows 平臺(tái)的Windows loader作業(yè)流程都是相同的,一旦程序檔案總管、瀏覽器、執(zhí)行.......等方式啟動(dòng)后,Windows loader 便會(huì)依次往下列幾個(gè)地方搜尋相關(guān)的程序庫(kù)或元件:
    1: Momery
    2: 應(yīng)用程序所在的目錄
    3: Windows 的目錄
    4: Windows\system目錄
    5: 環(huán)境變數(shù)所指定的目錄
    如果以上五個(gè)地方都找不到相關(guān)的程序庫(kù)或元件的話,Windows便會(huì)告知用戶錯(cuò)誤信息。
    Microsoft SQL Server 的Client 端是籍由named pips 與Server端溝通的,為了支持named Pips , 所有程序界面都采用16位元的DBNMP3.DLL或32位元的DBNMPNTW.DLL程序庫(kù)。在強(qiáng)調(diào)一次,這些DLL檔必須被放置在Windows\System或其他Windows loader 能找到的目錄。
    解決區(qū)域網(wǎng)絡(luò)方面的連接問(wèn)題
    通常根據(jù)下列的問(wèn)題及步驟來(lái)處理這方面的問(wèn)題:
    1:用戶是否確實(shí)登入網(wǎng)絡(luò)? 這是常見(jiàn)的疏忽,因?yàn)橛脩艚?jīng)常只登入到工作站本身,而沒(méi)有進(jìn)入網(wǎng)絡(luò),這是您可以選擇開(kāi)始/關(guān)閉系統(tǒng)來(lái)關(guān)閉所有程序,登入成其他的用戶,重新做一次登入。
    2:是否還有連接空間讓用戶使用? 假如用戶建立許多的連接關(guān)系后,忘了切斷它,那么操作系統(tǒng)有可能無(wú)法建立新的連接,有些操作系統(tǒng)可供同時(shí)連接的數(shù)目是有限的,預(yù)設(shè)的狀況下,假如用戶同時(shí)用4、5條的遠(yuǎn)端連接關(guān)系后,這個(gè)用戶若想再連線到SQL Server 就會(huì)有問(wèn)題。
    3:網(wǎng)絡(luò)是否癱瘓?假如執(zhí)行了很多個(gè)遠(yuǎn)端數(shù)據(jù)庫(kù)存取程序都無(wú)回應(yīng)的話,您可用[網(wǎng)絡(luò)鄰居]來(lái)檢查其他機(jī)器上的共用目錄是否依舊可以存取。
    4:您是否曾用Client Configuration Utility 去設(shè)定裝置的驅(qū)動(dòng)程序后網(wǎng)絡(luò)地址?當(dāng)SQL Server 支援TCP/IP后,系統(tǒng)會(huì)要求您做相關(guān)的設(shè)定。因系統(tǒng)將參照網(wǎng)址而非用名稱來(lái)存取服務(wù)器。
    與SQL有關(guān)的連接問(wèn)題 通常根據(jù)下列的問(wèn)題及步驟來(lái)處理這方面的問(wèn)題
    1:用戶是否輸入正確的登入ID和PASSWORD。
    2:服務(wù)器有沒(méi)有運(yùn)作?當(dāng)服務(wù)器開(kāi)機(jī)時(shí),是否有自動(dòng)開(kāi)啟SQL Server?您可以在控制臺(tái)的服務(wù)程序或用Startup.cmd 這個(gè)批處理文件來(lái)檢視這項(xiàng)設(shè)定。也可以用SQL Server Manager 來(lái)確定SQL Server 是否正常運(yùn)作:
    (1):服務(wù)器的RAM或硬盤(pán)空間是否太小了?
    (2):SQL Server 數(shù)據(jù)庫(kù)中的資料是否以壞掉?
    (3):SQL SERVER 是否處于單機(jī)模式運(yùn)作?或SQL的ADMINISTRATOR正在維護(hù)系統(tǒng)。
    用戶權(quán)利和授權(quán)問(wèn)題
    SQL SERVER 具有可連接超過(guò)1000個(gè)的用戶的能力,但真正可同時(shí)連接的數(shù)目就要看Administrator 的設(shè)定了,每一條的連接關(guān)系都會(huì)消耗37KB至42KB大小不等的RAM,這些RAM是被用來(lái)充當(dāng)程序或資料的快取空間之用。微軟公司要求所有要存取WIndows NT 或SQL Server 的用戶都必須取得用戶端存取授權(quán)(Client Access License :ACL)。用戶端存取授權(quán)和操作系統(tǒng)授權(quán)是分開(kāi)的,用戶端存取授權(quán)有兩種:
    1:每服務(wù)器模式(Per Server Mode):用戶在用戶端可與SQL Server 或Windows NT 建立n條連接關(guān)系。換而言之,不能同時(shí)有超過(guò)n個(gè)的連接關(guān)系存取服務(wù)器。
    2:每一客戶模式(per Seat Mode ):每個(gè)用戶端都必須購(gòu)買用戶段存取權(quán)限,若同時(shí)連到NT & SQL Server 的連接關(guān)系已經(jīng)超過(guò)每一客戶的授權(quán)數(shù)目,用戶端的用戶仍然可繼續(xù)連線上來(lái)。