Windows-Server-2008
SQL Server 2008 R2 記憶體洩漏
我們正在從一台伺服器轉移到另一台伺服器。
我正在我們的新伺服器上執行 SQL Server 數據庫,舊伺服器現在將其用作數據庫伺服器,目的是使其從一台伺服器平穩過渡到另一台伺服器,同時 DNS 傳播,因此任何人都不會停機。
新伺服器上目前沒有執行其他任何東西,它是所有內容的全新安裝。
sqlserver.exe 程序似乎不斷增加記憶體需求,這很可能是我的網站上的連接沒有正確關閉嗎?或者 SQL Server 中是否存在任何已知的記憶體洩漏?我們每天收到大約 40k 的頁面瀏覽量,在爬蟲頁面瀏覽量中可能是這個數字的 5 倍左右。
DB MDF+LDF 的總大小非常小,只有 600mb。sqlservr.exe 的目前送出 (KB) 為 2,393,000。它以每秒或每兩秒鐘約 0.5MB 的速度增長。
如果這是我們網站上沒有正確關閉的連接,有沒有辦法清理舊的打開連接?除了明顯地解決根本原因之外,我們還能做些什麼呢?
我不是 SQL 內部專家,但據我所知,SQL 將使用與您配置的記憶體一樣多的記憶體,並且作業系統將允許它擁有。記憶體比數據庫本身更多,例如執行計劃 http://msdn.microsoft.com/en-us/library/ms181055.aspx
作為一個好的經驗法則,您的 SQL 記憶體應按以下方式配置:
取您的作業系統 RAM 並減去 2GB 或 10%,以較大者為準。那應該是“最大”記憶體。接下來將您的最小記憶體設置為作業系統設置的一半。根據 Brent Ozar http://www.brentozar.com/archive/2008/03/sql-server-2005-setup-checklist-part-1-before-the-install/