Ⅰ sql 2000 sp4 老是自動停止 高分請教高手
我也有遇到過這個問題,我當時的解決方案是卸載殺毒軟體,我當時卸載了360,就OK了
Ⅱ C# SuperSocket 客戶端發送圖片 服務端接收問題
把XML保存為字元串 發送到客戶端 然後在客戶端使用 XMLDOCUMENT的Load方法,將字元串載入 xmldocument doc=new xmldocument(); doc.load(接收過來的字元串); 下面你自己處理吧
Ⅲ 如何解決 SQL Server 2000 中的連接問題
解決連接問題
在 SQL Server 2000 中可能會注意到的大多數連接問題都是由 TCP/IP 的問題或 Windows 身份認證的問題引起,或者由兩者共同引起。
重要說明:在開始解決 SQL Server 2000 的連接問題之前,請確認 MSSQLServer 服務已在運行 SQL Server 的計算機上啟動。
1、驗證 DNS 設置
域名系統 (DNS) 中的名稱解析過程用於解析 SQL Server 實例名稱的 IP 地址。如果名稱解析過程工作不正常,就不能獲得 SQL Server 實例,您可能會收到一條或多條下列錯誤信息:
SQL Server does not exist or access denied
General Network Error
Cannot Generate SSPI Context
要驗證名稱解析過程是否在解析正確的伺服器,可以使用伺服器名和伺服器的 IP 地址 ping 伺服器。為此,請按以下步驟操作:
單擊「開始」,然後單擊「運行」。
在「運行」對話框中,在「打開」框中鍵入 cmd,然後單擊「確定」。
在命令提示符下,運行下列命令:
ping <Server Name>
記錄返回的 IP 地址。
在命令提示符下,運行下列命令(此處的 IP address 就是您在步驟 3 中記錄的 IP 地址):
ping –a <IP address>
驗證命令解析的是正確的伺服器名。如果兩個指定的命令有任何一個不成功、超時或沒有返回正確的值,那麼 DNS 查找未能正常工作,或者有其他網路或路由問題引發問題。要查看當前 DNS 設置,在命令提示符下運行下列命令:ipconfig /all
有關 ipconfig 命令的其他信息,請單擊下面的文章編號,以查看 Microsoft 知識庫中相應的文章:
223413 Windows 2000 中 Ipconfig.exe 的選項
要解決此問題,可以在客戶端計算機上的 %systemroot%\system32\drivers\etc\hosts 文件中為伺服器添加一個條目。要解決此問題,還可以使用命名管道網路庫連接到伺服器。
2、驗證啟用的協議和別名
如果客戶端計算機上的別名設置錯誤,可能會引起連接問題。您可以使用客戶端網路實用程序查看別名。為此,請按以下步驟操作:
啟動客戶端網路實用程序。如果 SQL Server 客戶端工具被安裝在正在運行客戶端應用程序的計算機上,請按照以下步驟啟動客戶端網路實用程序:如果 SQL Server 客戶端工具沒有安裝在客戶端計算機上,請按照以下步驟啟動客戶端網路實用程序:
單擊「開始」,然後單擊「運行」。
在「運行」對話框中,在「打開」框中鍵入 cliconfg,然後單擊「確定」。
單擊「開始」,然後指向「程序」。
指向「Microsoft SQL Server」,然後單擊「客戶端網路實用程序」。
在「SQL Server 客戶端網路實用程序」窗口中,單擊「常規」標簽,然後啟用您要使用的所有協議。
注意:您必須至少啟用 TCP/IP 協議和命名管道協議。
單擊「別名」標簽,然後驗證為 SQL Server 實例所配置的別名。
驗證別名的屬性,確認伺服器名或 IP 地址和協議的配置是正確的。
通過使用伺服器名、IP 地址或者其他協議,您可以創建一個新的別名以測試連接性能。
注意:在 Microsoft 數據存取部件 (MDAC) 的早期版本中,客戶端網路實用程序的用戶界面是不同的。因此,如果您沒有看到本文中列出的選項,請在運行客戶端應用程序的計算機上安裝 MDAC 的新版本。
3、驗證 SQL Server 實例正在正確地偵聽
要驗證 SQL Server 實例正在正確地偵聽命名管道、TCP/IP 或您在客戶端應用程序中使用的其他協議,請打開當前的 SQL Server 錯誤日誌文件。SQL Server 錯誤日誌文件可能包括與以下類似的條目:2003-11-06 09:49:36.17 server SQL server listening on TCP, Shared Memory, Named Pipes.2003-11-06 09:49:36.17 server SQL server listening on 192.168.1.5:1433, 127.0.0.1:1433。
通過分析 SQL Server 錯誤日誌文件中的條目,可以驗證 SQL Server 實例是否正在偵聽正確的 IP 地址和埠。在默認情況下,一個默認的 SQL Server 實例偵聽埠 1433。您還可以使用伺服器網路實用程序來驗證 SQL Server 的協議設置並更改 SQL Server 中的屬性,包括可以連接到 SQL Server 和可以使用的埠的協議。關於使用伺服器網路實用程序的更多信息,請參見 SQL Server 在線參考書中的「SQL Server 網路實用程序」專題。
有時候,SQL Server 2000 可能不會綁定於埠 1433 或任何其他指定的埠。如果埠正被其他應用程序使用,或者如果您正在嘗試使用一個錯誤的 IP 地址進行連接,就可能會出現此問題。因此,TCP/IP 到 SQL Server 的連接可能不成功,在 SQL Server 錯誤日誌中您會收到下列錯誤信息:
2001-11-14 15:49:14.12 server SuperSocket Info:Bind failed on TCP port 1433.
有關其他信息,請單擊下面的文章編號,以查看 Microsoft 知識庫中相應的文章:
307197 PRB:TCP\IP 埠正由另一應用程序使用
如果通過 TCP/IP 連接您不能連接到 SQL Server 實例,請嘗試使用命名管道協議或共享內存協議。在命令提示符下運行下面的命令,以獲取關於正在使用的埠的信息:NETSTAT -an
您還可以使用 Portqry 命令行實用程序來獲取關於正在使用的埠的更多信息。
注意:對於 SQL Server 命名實例,SQL Server 動態地決定埠並偵聽決定的埠。因此,當您啟動 SQL Server 命名實例時,SQL Server 將設法偵聽之前使用的埠。如果 SQL Server 不能綁定到該埠,命名實例可能會動態地綁定到另一個埠。在這種情況下,請確認客戶端應用程序也被設置為動態地決定埠。作為選擇,您還可以為命名實例指定一個靜態埠,通過客戶端網路實用程序對其進行綁定和偵聽。
4、解決 MDAC 問題
MDAC 的問題也可能會引起連接問題。例如,安裝一個軟體可能會覆蓋一些 MDAC 文件或更改許可權,而您需要這些許可權才能訪問 MDAC 文件。您可以運行 MDAC 部件檢查器來驗證 MDAC 在計算機上的安裝。
注意:如果您正連接到 SQL Server 的一個命名實例,請確認計算機上運行的是 MDAC 2.6 或更新的版本。MDAC 的早期版本不識別 SQL Server 的命名實例。因此,可能無法連接到命名實例。
5、解決防火牆問題
如果防火牆存在於客戶端計算機和正在運行 SQL Server 的計算機之間,請確認通過防火牆進行通信時所需的埠已打開。
如果您使用 TCP/IP 協議連接 SQL Server 實例,請確認能夠用 Telnet 程序連接到 SQL Server 正在偵聽的埠。要使用 Telnet 程序,在命令提示符下運行下列命令:Telnet <IP Address> <Port Number>
如果 Telnet 程序沒有成功,並且您接收到錯誤信息,請解決此錯誤然後嘗試再次連接。
注意:因為由 Slammer 病毒引起的問題,在您的防火牆上,用戶數據報協議 (UDP) 埠 1434 可能被阻擋。
6、解決身份驗證和安全問題
由於身份認證失敗,可能無法連接到 SQL Server。如果身份認證失敗,您可能收到下列錯誤信息之一:
Login failed for user '<username>'
Login failed for user 'NTAUTHORITY\ANONYMOUS LOGON'
Login failed for user 'null'
如果您由於身份認證失敗收到了錯誤信息,而且錯誤信息中沒有提到一個明確的 SQL Server 登錄名,請使用 Windows 身份認證解決該問題。由於 Windows 身份認證的問題,您可能會收到下列錯誤信息:
Cannot generate SSPI Context
下列問題可能會引起身份認證和安全問題:
NTLM 身份認證或 Kerberos 身份認證出現問題。
由於連接問題,無法聯系域控制器。
域之間的信任關系出現問題。
有關可能原因的更多信息,請參見計算機上的事件日誌。要解決 Windows 身份認證的連接問題,您可以使用 SQL Server 身份認證連接到 SQL Server 實例。 有關如何診斷和解決「Cannot Generate SSPI Context」錯誤的其他信息,請單擊下面的文章編號,以查看 Microsoft 知識庫中相應的文章:
811889 如何排除「Cannot generate SSPI context」錯誤信息
如果在使用 SQL Server 身份認證時連接沒有成功,您會收到下列錯誤信息:
Login failed for user '<username>' .Not associated with a trusted connection
若要解決此問題,請按照以下步驟操作。
重要說明本部分(或稱方法或任務)包含有關如何修改注冊表的步驟。但是,注冊表修改不當可能會出現嚴重問題。因此,請一定嚴格按照下列步驟操作。為了獲得進一步保護,請在修改注冊表之前對其進行備份。這樣就可以在出現問題時還原注冊表。有關如何備份和還原注冊表的更多信息,請單擊下面的文章編號,以查看 Microsoft 知識庫中相應的文章:
322756 如何在 Windows 中備份和還原注冊表
請確認 SQL Server 實例配置為使用 Windows 身份認證和 SQL Server 身份認證。為此,請確認在正在運行 SQL Server 的計算機上存在下列注冊表項。對於默認的 SQL Server 實例:
HKEY_LOCAL_MACHINE\Software\Microsoft\MSSQLServer\MSSQLServer\LoginMode
對於 SQL Server 的命名實例:
HKEY_LOCAL_MACHINE\Software\Microsoft\Microsoft SQL Server\<Instance Name>\MSSQLServer\LoginMode
請確認已設置下列注冊表項的值:
身份認證類型
值
僅限於 Windows 身份認證 1
混合模式(SQL Server 身份認證和 Windows 身份認證) 2
注意:如果您對注冊表進行了任何更改,必須關閉並重新啟動 SQL Server 實例使更改生效。
嘗試使用其他 Windows 帳戶或 SQL Server 登錄帳戶連接到 SQL Server 實例。這樣能夠幫助確定是否是由於某個特殊的登錄帳戶的問題而造成連接失敗。例如,登錄帳戶的密碼可能已被更改。
嘗試使用其他協議連接到 SQL Server 實例。例如,使用 TCP/IP 協議進行 Windows 身份認證的連接可能會失敗,但是使用命名管道協議進行 Windows 身份認證的連接就可能會成功。
如果您正在使用證書,當嘗試連接到 SQL Server 實例時,可能會收到一條安全套接字層 (SSL) 安全錯誤信息。 有關其他信息,請單擊下面的文章編號,以查看 Microsoft 知識庫中相應的文章:
316898 如何藉助 Microsoft Management Console 為 SQL Server 2000 啟用 SSL 加密
322144 修復:SECDoClientHandShake 無法連接到 SQL Server
7、解決 TCP/IP 套接字上的壓力問題
在使用 SQL Server ODBC 驅動程序、Microsoft OLE DB Provider for SQL Server 或 System.Data.SqlClient 管理提供程序時,可以使用恰當的應用程序編程介面 (API) 來禁用連接池。在禁用連接池、並且應用程序頻繁打開和關閉連接時,對基本 SQL Server 網路庫的壓力可能會增大。有時候,Web 伺服器和 JDBC 驅動程序也會嘗試連接到 SQL Server 實例。因此,對 SQL Server 連接需求的增加可能會超過 SQL Server 的處理能力。這可能會給 TCP/IP 套接字帶來壓力,您還可能在 SQL Server 錯誤日誌文件中收到下列錯誤信息:
2003-08-07 20:46:21.11 server Error:17832, Severity:20, State:6
2003-08-07 20:46:21.11 server Connection opened but invalid login packet(s) sent.Connection closed.
注意:如果運行 SQL Server 2000 SP3 或 SQL Server 2000 SP3a,則不會注意到對 TCP/IP 套接字的壓力,這是由於添加了對登陸數據包數量的限制。在使用第三方驅動程序連接到 SQL Server 實例時,發生錯誤 17832。要解決該問題,請與第三方供應商聯系,並獲取經測試證明能夠用於 SQL Server 2000 SP3 和 SQL Server 2000 SP3a 的驅動程序。
8、查看 SQL Server 實例是否以單用戶模式啟動
如果嘗試連接的 SQL Server 實例是以單用戶模式啟動的,只能建立一個到 SQL Server 的連接。如果運行軟體的計算機自動連接到 SQL Server,該軟體可以輕松地使用唯一的連接。例如,下面的軟體可以自動連接到 SQL Server 實例:
SQL Server 代理程序
第三方備份軟體
第三方監測軟體
第三方病毒軟體
Microsoft Internet 信息服務 (IIS)
SQL Server 企業管理器
嘗試連接到 SQL Server 實例的客戶端應用程序收到下列錯誤信息:
SQL Server does not exist or Access Denied
當安裝過程以單用戶模式啟動 SQL Server 實例時,此錯誤一般發生在 SQL 群集安裝和服務軟體包安裝期間。指定的應用程序會自動連接到使用唯一可用連接的 SQL Server 實例,從而安裝失敗。
要確定 SQL Server 實例是否已經以單用戶模式啟動,請檢查 SQL Server 錯誤日誌文件中是否具有一個與以下類似的條目:
2003-07-31 11:26:43.79 spid3 Warning ******************
2003-07-31 11:26:43.80 spid3 SQL Server started in single user mode.Updates allowed to system catalogs.
9、驗證到 SQL Server 的命名管道連接
如果您無法使用命名管道連接到 SQL Server 實例,請確認 SQL Server 實例配置為接受命名管道連接。
Ⅳ SQL Server 不存在或訪問被拒絕
總結起來的關於SQL Server連接中此類四個最常見錯誤錯誤解決方案如下:
一."SQL Server 不存在或訪問被拒絕"
這個是最復雜的,錯誤發生的原因比較多,需要檢查的方面也比較多.
一般說來,有以下幾種可能性:
1,SQL Server名稱或IP地址拼寫有誤
2,伺服器端網路配置有誤
3,客戶端網路配置有誤
要解決這個問題,我們一般要遵循以下的步驟來一步步找出導致錯誤的原因.
============= 首先,檢查網路物理連接 =============
ping <伺服器IP地址/伺服器名稱>
如果 ping <伺服器IP地址> 不成功,說明物理連接有問題,這時候要檢查硬體設備,如網卡,HUB,路由器等.
還有一種可能是由於客戶端和伺服器之間安裝有防火牆軟體造成的,比如 ISA Server.防火牆軟體可能會屏蔽對 ping,telnet 等的響應
因此在檢查連接問題的時候,我們要先把防火牆軟體暫時關閉,或者打開所有被封閉的埠.
如果ping <伺服器IP地址> 成功而,ping <伺服器名稱> 失敗
則說明名字解析有問題,這時候要檢查 DNS 服務是否正常.
有時候客戶端和伺服器不在同一個區域網裡面,這時候很可能無法直接使用伺服器名稱來標識該伺服器,這時候我們可以使用HOSTS文件來進行名字解析,
具體的方法是:
1.使用記事本打開HOSTS文件(一般情況下位於C:\WINNT\system32\drivers\etc).
添加一條IP地址與伺服器名稱的對應記錄,如:
172.168.10.24 myserver
2.或在 SQL Server 的客戶端網路實用工具裡面進行配置,後面會有詳細說明.
============= 其次,使用 telnet 命令檢查SQL Server伺服器工作狀態 =============
telnet <伺服器IP地址> 1433
如果命令執行成功,可以看到屏幕一閃之後游標在左上角不停閃動,這說明 SQL Server 伺服器工作正常,並且正在監聽1433埠的 TCP/IP 連接
如果命令返回"無法打開連接"的錯誤信息,則說明伺服器端沒有啟動 SQL Server 服務,
也可能伺服器端沒啟用 TCP/IP 協議,或者伺服器端沒有在 SQL Server 默認的埠1433上監聽.
=============接著,我們要到伺服器上檢查伺服器端的網路配置,檢查是否啟用了命名管道.是否啟用了 TCP/IP 協議等等 =============
可以利用 SQL Server 自帶的伺服器網路使用工具來進行檢查.
點擊:程序 -- Microsoft SQL Server -- 伺服器網路使用工具
打開該工具後,在"常規"中可以看到伺服器啟用了哪些協議.
一般而言,我們啟用命名管道以及 TCP/IP 協議.
點中 TCP/IP 協議,選擇"屬性",我們可以來檢查 SQK Server 服務默認埠的設置
一般而言,我們使用 SQL Server 默認的1433埠.如果選中"隱藏伺服器",則意味著客戶端無法通過枚舉伺服器來看到這台伺服器,起到了保護的作用,但不影響連接.
============= 接下來我們要到客戶端檢查客戶端的網路配置 =============
我們同樣可以利用 SQL Server 自帶的客戶端網路使用工具來進行檢查,
所不同的是這次是在客戶端來運行這個工具.
點擊:程序 -- Microsoft SQL Server -- 客戶端網路使用工具
打開該工具後,在"常規"項中,可以看到客戶端啟用了哪些協議.
一般而言,我們同樣需要啟用命名管道以及 TCP/IP 協議.
點擊 TCP/IP 協議,選擇"屬性",可以檢查客戶端默認連接埠的設置,該埠必須與伺服器一致.
單擊"別名"選項卡,還可以為伺服器配置別名.伺服器的別名是用來連接的名稱,
連接參數中的伺服器是真正的伺服器名稱,兩者可以相同或不同.別名的設置與使用HOSTS文件有相似之處.
通過以上幾個方面的檢查,基本上可以排除第一種錯誤.
二."無法連接到伺服器,用戶xxx登陸失敗"
該錯誤產生的原因是由於SQL Server使用了"僅 Windows"的身份驗證方式,
因此用戶無法使用SQL Server的登錄帳戶(如 sa )進行連接.解決方法如下所示:
1.在伺服器端使用企業管理器,並且選擇"使用 Windows 身份驗證"連接上 SQL Server
2.展開"SQL Server組",滑鼠右鍵點擊SQL Server伺服器的名稱,選擇"屬性",再選擇"安全性"選項卡
3.在"身份驗證"下,選擇"SQL Server和 Windows ".
4.重新啟動SQL Server服務.
在以上解決方法中,如果在第 1 步中使用"使用 Windows 身份驗證"連接 SQL Server 失敗,
那就通過修改注冊表來解決此問題:
1.點擊"開始"-"運行",輸入regedit,回車進入注冊表編輯器
2.依次展開注冊表項,瀏覽到以下注冊表鍵:
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSSQLServer\MSSQLServer]
3.在屏幕右方找到名稱"LoginMode",雙擊編輯雙位元組值
4.將原值從1改為2,點擊"確定"
5.關閉注冊表編輯器
6.重新啟動SQL Server服務.
此時,用戶可以成功地使用sa在企業管理器中新建SQL Server注冊,
但是仍然無法使用Windows身份驗證模式來連接SQL Server.
這是因為在 SQL Server 中有兩個預設的登錄帳戶:
BUILTIN\Administrators
<機器名>\Administrator 被刪除.
要恢復這兩個帳戶,可以使用以下的方法:
1.打開企業管理器,展開伺服器組,然後展開伺服器
2.展開"安全性",右擊"登錄",然後單擊"新建登錄"
3.在"名稱"框中,輸入 BUILTIN\Administrators
4.在"伺服器角色"選項卡中,選擇"System Administrators"
5.點擊"確定"退出
6.使用同樣方法添加 <機器名>\Administrator 登錄.
說明:
以下注冊表鍵:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSSQLServer\MSSQLServer\LoginMode
的值決定了SQL Server將採取何種身份驗證模式.
1.表示使用"Windows 身份驗證"模式
2.表示使用混合模式(Windows 身份驗證和 SQL Server 身份驗證).
三.提示連接超時
如果遇到第三個錯誤,一般而言表示客戶端已經找到了這台伺服器,並且可以進行連接,
不過是由於連接的時間大於允許的時間而導致出錯.
這種情況一般會發生在當用戶在Internet上運行企業管理器來注冊另外一台同樣在Internet上的伺服器,
並且是慢速連接時,有可能會導致以上的超時錯誤.有些情況下,由於區域網的網路問題,也會導致這樣的錯誤.
要解決這樣的錯誤,可以修改客戶端的連接超時設置.
默認情況下,通過企業管理器注冊另外一台SQL Server的超時設置是 4 秒,
而查詢分析器是 15 秒(這也是為什麼在企業管理器里發生錯誤的可能性比較大的原因).
具體步驟為:
企業管理器中的設置:
1.在企業管理器中,選擇菜單上的"工具",再選擇"選項"
2.在彈出的"SQL Server企業管理器屬性"窗口中,點擊"高級"選項卡
3.在"連接設置"下的"登錄超時(秒)"右邊的框中輸入一個比較大的數字,如 20.
查詢分析器中的設置:
工具 -- 選項 -- 連接 -- 將登錄超時設置為一個較大的數字
四.大部分機都用Tcp/ip才能成功,有次我發現用Named Pipes才可以?
這是因為在WINDOWS 2000以後的操作系統中,MS為解決SQL SERVER的安全問題將TCP/IP配置
為SQLSERVER的默認連接協議,你可以在CLIENT NETWORK UTILITY中看到TCP/IP和NAME PIPE
的順序。
你也可以在:
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSSQLServer\Client\SuperSocketNetLib]
"ProtocolOrder"=hex(7):74,00,63,00,70,00,00,00,00,00
看到默認的協議。
2.怎麼在程序中更改Named Pipes , Tcp/ip ,其sql語句怎麼寫?
你可以在上面提到的注冊表的位置修改:
CLIENT端:
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSSQLServer\Client\SuperSocketNetLib]
"ProtocolOrder"=hex(7):74,00,63,00,70,00,00,00,00,00
SERVER端:
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSSQLServer\MSSQLServer\SuperSocketNetLib]
"ProtocolOrder"=hex(7):74,00,63,00,70,00,00,00,00,00
我的問題應該屬於第一類,遺憾的是我按照上面說的方法都不能解決這個問題。我使用:telnet <伺服器IP地址> 1433 顯示不能正確連接。按照說的方法也不能解決這個問題。有網友說出現1433埠不能連接的因為是Sql Server 2000沒有打補丁的緣故,但我打過sp4後仍然不能正確連接1433埠。
我在web.config里的設置為:
<configuration>
<appSettings>
<!--"data source=SASANK;initial catalog=CODER;persist security info=False;user id=sa;workstation id=SASANK;packet size=4096"-->
<add key="ConnectionString" value="server=localhost;Trusted_Connection=false;user id=sa;password=sa;database=sichuan"/>
</appSettings>
<system.web>
找了好久原因,都不行。
後來試著將資料庫連接項改為:
<add key="ConnectionString" value="server=192.168.254.60;Trusted_Connection=false;user id=sa;password=sa;database=sichuan"/>也就是把其中的Server改為我的機器在區域網中的IP地址(注意我是本機調試,我把server改為機器名也不行),連接運行,竟然成功了!問題解決了,但我還是不太明白是什麼原因?為什麼我使用telnet命令打開1433埠不成功?希望有誰能夠解釋下!
http://www.cnblogs.com/tutuya/archive/2006/08/07/470080.html
Ⅳ 如何使用SuperSocket
一個SuperSocket的程序,可以包含多個Socket服務(稱為AppServer),一個Socket服務中有多個客戶端連接對象(稱這個連接對象為AppSession),一個客戶端與Socket服務通訊命令都在AppSession中進行(稱這個命令為Commands),每一個命令在被執行前我們可以來控制這個命令是否給予執行,類似與MVC中的 Action Filter(稱為CommandFilterAttribute),還有一些其他的例如命令行協議的,用默認的就可以了,復雜的Socket程序可能需要自定義協議,這里我們不予深究(其實也簡單,搞懂上面的,這個就好搞了)
接下來我拿我項目的代碼分別對上面列出的概念來說明
我用的是最新的SuperSocket1.6.4.0,VS2013,需要使用三個官方提供的類庫:SuperSocket.Common.dll,SuperSocket.SocketBase.dll,SuperSocket.SocketEngine.dll,上面忘了說了,SuperSocket集成了日誌插件:log4net,所以這里我們也要引用,注意這個1.6.4.0對應的log4net版本為:1.2.13.0,一定要使用官方Demo包中的dll,避免版本引用不一致的問題,項目結構(控制台程序)
Ⅵ SQL Server不存在或訪問被拒絕問題的解決,怎麼辦
企業管理器中的設置:
1.在企業管理器中,選擇菜單上的"工具",再選擇"選項"
2.在彈出的"SQL Server企業管理器屬性"窗口中,點擊"高級"選項卡
3.在"連接設置"下的"登錄超時(秒)"右邊的框中輸入一個比較大的數字,如 20.
查詢分析器中的設置:
工具 -- 選項 -- 連接 -- 將登錄超時設置為一個較大的數字
四.大部分機都用Tcp/ip才能成功,有次我發現用Named Pipes才可以?
這是因為在windows 2000以後的操作系統中,MS為解決SQL SERVER的安全問題將TCP/IP配置
為SQLSERVER的默認連接協議,你可以在CLIENT NETWORK UTILITY中看到TCP/IP和NAME PIPE
的順序。
你也可以在:
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSSQLServer\Client\SuperSocketNetLib]
"ProtocolOrder"=hex(7):74,00,63,00,70,00,00,00,00,00
看到默認的協議。
2.怎麼在程序中更改Named Pipes , Tcp/ip ,其sql語句怎麼寫?
你可以在上面提到的注冊表的位置修改:
CLIENT端:
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSSQLServer\Client\SuperSocketNetLib]
"ProtocolOrder"=hex(7):74,00,63,00,70,00,00,00,00,00
SERVER端:
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSSQLServer\MSSQLServer\SuperSocketNetLib]
"ProtocolOrder"=hex(7):74,00,63,00,70,00,00,00,00,00
我的問題應該屬於第一類,遺憾的是我按照上面說的方法都不能解決這個問題。我使用:telnet <伺服器IP地址> 1433 顯示不能正確連接。按照說的方法也不能解決這個問題。有網友說出現1433埠不能連接的因為是Sql Server 2000沒有打補丁的緣故,但我打過sp4後仍然不能正確連接1433埠。
我在web.config里的設置為:
<configuration>
<appSettings>
<!--"data source=SASANK;initial catalog=CODER;persist security info=False;user id=sa;workstation id=SASANK;packet size=4096"-->
<add key="ConnectionString" value="server=localhost;Trusted_Connection=false;user id=sa;passWord=sa;database=sichuan"/>
</appSettings>
<system.web>
找了好久原因,都不行。
後來試著將資料庫連接項改為:
<add key="ConnectionString" value="server=192.168.254.60;Trusted_Connection=false;user id=sa;password=sa;database=sichuan"/>也就是把其中的Server改為我的機器在區域網中的IP地址(注意我是本機調試,我把server改為機器名也不行),連接運行,竟然成功了!問題解決了,但我還是不太明白是什麼原因?為什麼我使用telnet命令打開1433埠不成功?希望有誰能夠解釋下!
Ⅶ 如何用命令行方式配置SQL SERVER開啟TCP/IP
只能使用注冊方式,注冊表可以在這里找到:
http://support.microsoft.com/kb/841252
最後還是直接修改注冊表成功了,可根據
HKLM/軟體/Microsoft/Microsoft SQL Server / mssql$ <instancename> / MSSQLServer/SuperSocketNetLib/Tcp /
MSSQL.1下可對照正確的機器上的值進行修改
例如:Enable=1,AllIp\TcpPort=1433等等
Ⅷ 高分問題 bios protect
樓主所說那個選項就是保護bios的,當然不讓你刷新了.你說這個牌子的電腦我沒用過,關閉的方法你可以詳細看一下主板說明書,關於bios設置方面的問題.
當然,如果你的品牌機器沒有過保的話,可以考慮將主機箱打開,仔細的觀看主板上的所有跳線(跳線你可能不認識,其實就是主板上挨著的幾根針腳,主板跳線大多數都以三個針腳的為多,最明顯的特徵是其中兩根針腳上有一個跳線帽,用手一提就能拿下來.),這樣的跳線在主板上不會太多,而且每一組跳線底下都會標著字母,比如:JP1、JP2、JP3等等。如果有主板說明書的話,對照即可知道這些字母分別代表什麼。沒有主板說明書的話,就須要仔細的觀看主板上的任何一個寫有英文字母的地方,找到上面所說的那些JP*等等分別代表什麼。如:在主板上某位置寫著JP1=bios protect,就說明JP1跳線為bios保護。
確定哪個跳線為我們所需要的以後,只需將跳線帽從原來的兩根針腳取下,安裝到另外兩個針腳上即可。
如:三根並列針腳,跳線帽原來在1-2針腳上,只需取下換到2-3針腳即可。