一般登錄用友財務(wù)軟件時如果出現(xiàn)提示類似:SQL Server 不存在或訪問被拒絕,的錯誤提示一般有以下三個方面的原因,大家可以參考下面的解決辦法排查一下。
1,SQL Server名稱或IP地址拼寫有誤
2,服務(wù)器端網(wǎng)絡(luò)配置有誤
3,數(shù)據(jù)庫連接超時
第一種情況:SQL Server名稱或IP地址拼寫有誤

A:服務(wù)器或者單機(jī)版提示“SQL Server 不存在或訪問被拒絕”有兩種可能。1)未安裝SQL Server 數(shù)據(jù)庫(右擊“我的電腦”-“管理”-“服務(wù)和應(yīng)用程序”-“服務(wù)”-找一下有沒有“MSSQLSERVER”服務(wù),并查看是否已經(jīng)啟動),如果未安裝數(shù)據(jù)庫那么需要先安裝數(shù)據(jù)庫。2)軟件登錄界面,服務(wù)器配置錯誤造成,打開軟件登錄界面,重新配置一下服務(wù)器的IP地址在服務(wù)器一行配置成 127.0.0.1
用友T3用友通登錄界面

B:客戶端提示“SQL Server 不存在或訪問被拒絕”可能情況也是兩種。1)物理網(wǎng)絡(luò)影響,排查方法:點擊“開始”-“運行”-“CMD”-進(jìn)入DOS界面,輸入ping 10.92.4.94 (注意,格式為 ping 服務(wù)器IP地址,此例中10.92.4.94 為服務(wù)器IP地址)
windows開始運行

DOSping命令


如上圖所示,表示網(wǎng)絡(luò)通暢,如果是下圖所示表示物理網(wǎng)絡(luò)環(huán)境存在問題,此時我們需要檢查網(wǎng)絡(luò)環(huán)境,避如網(wǎng)卡,網(wǎng)線等硬件環(huán)境影響。
DOSping不通的情況
這里我們還需要注意一種情況:某此防火墻軟件可能會屏蔽對ping,telnet等的響應(yīng),比如ISA Server。所以我們在檢查連接問題的時候,我們要先把防火墻軟件暫時關(guān)閉,或者打開所有被封閉的端口。2)類似第一種情況中所說的服務(wù)器IP地址填寫錯誤,或者填寫的是計算機(jī)名,而同一局域網(wǎng)中有其他的電腦也是相同的機(jī)器名,導(dǎo)致DNS解析錯誤,比如同一局域網(wǎng)中有兩臺電腦的計算機(jī)名都是CW,一臺為10.92.4.94 另一臺為 10.92.4.95,事實上我們的服務(wù)器是10.92.4.94,此時我們?nèi)绻谲浖卿浗缑媾渲玫姆?wù)器如果是計算機(jī)名可能會出現(xiàn)DNS解析錯誤,導(dǎo)致提示:“SQL Server 不存在或訪問被拒絕”(例如,DNS將CW解析到10.92.4.95,而10.92.4.95 電腦上根本沒有安裝數(shù)據(jù)庫)。解決方案有兩種,第一種是在第一種情況中所說的更改服務(wù)器這一行的IP地址,另外一種解決方案我們可以配置一下HOSTS文件,操作方法如下:打開“我的電腦”找到“C:\WINDOWS\system32\drivers\etc”下的HOSTS文件,右擊,選擇“打開方式”,選擇“記事本”用記事本打開后,在127.0.0.1 localhost下面增加一行如:10.92.4.94  CW(注意,輸入完IP后建議按TAB鍵,不要按空格。)保存即可。

修改host文件

第二種情況:服務(wù)器端網(wǎng)絡(luò)配置有誤
A:這種情況一般是由于服務(wù)器配置的TCP/IP端口號不是1433造成的,正常情況下可能會提示“1433端口不通”的錯誤提示,但不排除會提示“SQL Server 不存在或訪問被拒絕”,針對這種情況大家可以參考一下之前寫過的打開軟件提示1433端口不通的問題分析大家可以點擊鏈接參考一下。除了文章中提到的情況,我們再看另外一種判斷1433端口的方法(此方法適合MSDE200簡版數(shù)據(jù)庫,由于簡版數(shù)據(jù)庫在開始菜單程序里沒有對應(yīng)的文件配置和查看開放1433端口是否開放):點擊“開始”-“運行”-輸入“cliconfg.exe”進(jìn)入 SQL Server 客戶端網(wǎng)絡(luò)實用工具,里查看TCP/IP是否啟用。
cliconfg.exe開始運行

SQL Server 客戶端網(wǎng)絡(luò)實用工具


接下來,我們需要點中TCP/IP,點擊屬性,查看默認(rèn)端口號是否是1433。

1433端口

另外,我們還需要點擊“開始”-“運行”-輸入“svrnetcn.exe”進(jìn)入SQL Server網(wǎng)絡(luò)實用工具,點中TCP/IP,點擊屬性,查看默認(rèn)端口號是否是1433。(PS:“隱藏服務(wù)器”,的意思是指客戶端無法通過枚舉服務(wù)器來看到這臺服務(wù)器,起到了保護(hù)的作用,但不影響連接。所謂枚舉服務(wù)器是在軟件登錄界面,點擊服務(wù)器旁邊的小方框后在計算機(jī)瀏覽里不會出現(xiàn)服務(wù)器的計算機(jī)名。)
SQL實例名稱

SQL實例名稱

B: SQL Server使用了“僅 Windows”的身份驗證方式,因此用戶無法使用SQL Server的登錄帳戶(如sa)進(jìn)行連接。一般情況下提示:“無法連接到服務(wù)器,用戶SA登陸失敗”

SQL口令sa口令

連接不到SQL服務(wù)


SQL SERVER2000參照如下方法解決:點擊:“開始”-“程序”-“Microsoft SQL Server”-“企業(yè)管理器”-展開“SQL Server組”,鼠標(biāo)右鍵點擊SQL Server服務(wù)器的名稱,選擇“屬性”,再選擇“安全性”選項卡,在“身份驗證”下,選擇“SQL Server和 Windows”。
SQL Server和 Windows混合模式
SQL和windows混合模式

MSDE簡版數(shù)據(jù)庫參照如下方法解決:點擊:“開始”-“運行”-“regedit”進(jìn)入注冊表編輯器,依次展開注冊表項,瀏覽到以下注冊表鍵:[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSSQLServer\MSSQLServer],在屏幕右方找到名稱“LoginMode”,雙擊編輯雙字節(jié)值,在屏幕右方找到名稱“LoginMode”,雙擊編輯雙字節(jié)值,將原值從1改為2,點擊“確定”,關(guān)閉注冊表編輯器,重新啟動SQL Server服務(wù)(先點“開始”-“運行”-輸入“net stop mssqlserver”停止,再點“開始”-“運行”-輸入“net start mssqlserver”)。

更改注冊表

更改注冊表鍵值

PS:鍵:[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSSQLServer\MSSQLServer\LoginMode]的值決定了SQL Server將采取何種身份驗證模式。
1、1表示使用“Windows 身份驗證”模式
2、2表示使用混合模式(Windows 身份驗證和 SQL Server 身份驗證)。

第三種情況:數(shù)據(jù)庫提示連接超時
此種情況是由于連接的時間大于允許的時間而導(dǎo)致出錯,一般出現(xiàn)數(shù)據(jù)庫連接超時,只要對數(shù)據(jù)庫進(jìn)行設(shè)置就可以了。這種情況一般會發(fā)生在當(dāng)用戶在Internet上運行企業(yè)管理器來注冊另外一臺同樣在Internet上的服務(wù)器,并且是慢速連接時,有可能會導(dǎo)致以上的超時錯誤。有些情況下,由于局域網(wǎng)的網(wǎng)絡(luò)問題,也會導(dǎo)致這樣的錯誤。(在局域網(wǎng)出現(xiàn)此種情況的概率較?。┙鉀Q此問題可以參照下面的步驟:

點擊:“開始”-“程序”-“Microsoft SQL Server”-“企業(yè)管理器”,在企業(yè)管理器中,選擇菜單上的“工具”,再選擇“選項”;在彈出的“SQL Server企業(yè)管理器屬性”窗口中,點擊“高級”選項卡;在“連接設(shè)置”下的“登錄超時(秒)”右邊的框中輸入一個比較大的數(shù)字,如 20。

sql連接時長

在查詢分析器中設(shè)置的方法如下:點擊:“開始”-“程序”-“Microsoft SQL Server”-“查詢分析器”,依次點擊“工具”-“選項”- “連接”將登錄超時設(shè)置為一個較大的數(shù)字,連接超時改為0。

查詢分析器更改登錄時長