簡體   English   中英

連接到SQL Server非常慢

[英]Connecting to SQL Server very slow

我有一個標准的PHP應用程序,它使用SQL Server作為后端數據庫。 我訪問的每個頁面的響應都有嚴重延遲。 這是我的開發服務器,所以它不是現場設置的問題,但它對於在系統上工作真的很煩人。

我每頁都有5到8秒的延遲。

  • 我在虛擬機(Virtual PC)上運行SqlServer 2000 Developer Edition。
  • 我已經在我的開發機器上安裝了SqlServer但是得到了相同的延遲。
  • 我已將問題隔離到調用mssql_connect(調用mssql_pconnect無效)

  • 這是一個關於我如何設置(或沒有設置,因為我沒有真正更改默認配置)SQL服務器的網絡問題。 這不是一個嚴格的編程問題,但我想我可能會在這里獲得一些有價值的反饋。

任何人都可以告訴我是否有一個技巧,特定的協議集,注冊表設置,什么會殺死這種延遲?

我在每次連接時也遇到了5-10秒的延遲,使用PHP的官方Microsoft SQL驅動程序(由@gaRex建議) - 這里發布的答案都沒有為我解決。

正如@ircmaxell所建議的,我的問題是DNS問題 - 解決方案是編輯\\windows\\system32\\drivers\\etc\\hosts文件(本地本地主機文件)並將自己的機器名稱添加到它。

在“系統屬性”對話框中,找到計算機的“計算機名稱” - 然后將類似127.0.0.1 my-computer的行添加到本地主機文件中。

對我來說,延遲再次發生,在下面的加載頁面的嘗試 - 之后,它是超級快,沒有任何延遲。

請注意,即使在物理計算機上也可能出現此問題,而不僅僅是在VM上。

希望這有助於其他人。

我在運行虛擬PC時遇到了網絡問題,網絡相關的一切都很慢,請嘗試在注冊表中添加此條目:

HKEY_LOCAL_MACHINE \\系統\\ CurrentControlSet \\服務\\ TCPIP \\參數

  • 創建名為DisableTaskOffload的新DWORD值並將其值設置為1。

  • 重新啟動計算機。

它對我有用, 來源

它可能是DNS問題嗎? 我知道MySQL在每次登錄時都會進行反向DNS查詢(而不是每個連接)。 如果您的服務器沒有反向DNS記錄(或者您的DNS很慢),則可能導致登錄時出現嚴重延遲。 MySQL中有一個選項可以禁用它。 我不確定SQL Server,但我認為它可能會做類似的事情......

我記得同樣的問題,但忘記了,我們如何解決它。

為了澄清請指定確切的連接字符串,您的SQLserver版本,並嘗試啟動這個舊的好實用程序c:\\ WINDOWS \\ system32 \\ cliconfg.exe,這也可以帶來一些亮點。

是的,我知道,它來自2k,但m $的人不喜歡從頭開始創建客戶端工具。

還嘗試為PHP獲取“正確”的mssql客戶端dll。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM