SQL Server 2008 管理需要多少努力?
我正在為 ASP.NET MVC 應用程序尋找合適的託管環境。我的選擇之一是租用 Hyper-V 伺服器並在其上安裝我的 SQL Server 2008 許可證。我對共享主機有點警惕,因為到目前為止我嘗試過的主機似乎並沒有非常一致的性能。
一個潛在的問題是我對 SQL Server 管理不太了解,所以我不確定這是否是一個好的選擇。我已經執行了兩個 linux 專用伺服器的故障轉移集群超過 5 年了,MySQL 從來沒有給我帶來任何麻煩。但那是 Linux,Windows 系統可能會有所不同。
執行中途高效的 MS SQL Server 2008 是否困難?它是否需要任何深入的管理知識?或者可能是經常性的管理工作(例如使伺服器保持最新的更新檔程序)?還是類似於 MySQL 的“安裝後忘記”體驗?
SQL Server 易於管理,但仍需要管理。這至少包括:
- 定期備份。你想要那個 - 或其他模型 - 清理你的日誌文件(否則它們會累積並且永遠不會被刪除)。
- 定期打更新檔。每 2 個月進行一次累積更新。
最重要的是,在 SQL Server 中設置一些自動維護(如 weekyl 數據庫檢查等)。
在所有數據庫中,SQL Server 是最好的管理數據庫。
也就是說,您可能處於不利的軌道上:
- Internet 上的 SQL 許可證必須是 SPLA(服務提供商許可協議)。不買,月租。最重要的是,比購買便宜。您的許可根本不包括提供服務。
- IO 性能可能很糟糕。Hyper-V 標準伺服器不適用於 SQL 託管。SQL,與任何數據庫一樣,當變得更加忙碌時,會有非常特定的 IO 需求——磁碟佈局通常是為數據庫計劃的,而不僅僅是“將一些磁碟放入一個盒子”的事情。它在 Hyper-V 上也很好用(我在 Hyper-V 上執行我的主 SQL Server),但你不會想要一個“正常”的 hyper-V 設置,它很可能一開始就具有完全糟糕的 IO 值。
IO 問題範例:
根據您將 Hyper-V 作為主機執行的方式,您可能擁有一個“中型伺服器”(8-12 個處理器核心,基本上是雙處理器 Opteron 平台),具有 32-64gb 的 RAM,您可以使用 VM 載入。磁碟 - 嗯 - 可能是 RAID 中的幾個 1tb 大磁碟。可能是 2x1TB 到 2x2tb 鏡像,或者 RAID 5 中的三個(便宜)。表現?對於大多數事情來說已經足夠了。數據庫明智?愚蠢的吸低IO。您不會單獨為 SQL Serve 這樣做,但在這裡它在所有 hyper-v 實例之間共享……而且會有很多。
我自己的設置(作為比較):
- Hyper-V 伺服器 2 個機架單元,2x4 核心 opteron 64gb ram。到目前為止一樣。
- 4x10k rpm 速激肽驅動器作為 RAID 10 用於作業系統和虛擬機。
已經好多了,也更貴了。但這不是它結束的地方。
- 對於 SQL 伺服器,另外 12 個(!) velociraptor 驅動器位於 2 個 RAID 組(日誌、數據)中,它們直接映射到 hyper-v 實例。(是的,驅動器盒有 24 個硬碟插槽)。
Ergo:我擁有我需要的所有 IO 性能(而且我需要它)。雖然這不是典型的低成本 hyper-v 虛擬伺服器設置。
請注意您的需求以及作為 Hyper-V 伺服器獲得的內容。大多數提供使壞數據庫伺服器。不過,與小型伺服器無關。