SQL Server 與 64 位元作業系統

問: 如果我執行 64 位元版本的 Windows Server® 作業系統,就必須使用 SQL Server 2000 Enterprise Edition (64 位元) 而不能使用 32 位元 SQL Server 2000,是嗎?

答: 從 SQL Server 2000 的觀點來看,唯一支援的原生 64 位元架構是 Intel 的 ia64。因此,SQL Server 2000 所謂的 64 位元支援是指 ia64。原生 64 位元 ia64 唯一支援的 SQL Server 2000 版本是 Enterprise Edition 版。既沒有像原生 64 位元應用程式一樣在 ia64 上執行的 SQL Server 2000 Standard Edition,也沒有在 ia64 Windows® on Windows (WOW,可執行 32 位元應用程式的作業系統子系統) 下執行的 SQL Server 2000 Standard Edition。

AMD x64 電腦要使用 SQL Server 2000 的話有兩種選擇。您可以執行 32 位元作業系統,在此情況下可執行任何 SQL Server 2000 版本及任何 Service Pack (SP)。或者,您也可以在 WOW 下執行 64 位元作業系統和 SQL Server 2000 (任一版本) SP4。執行於第二種環境的 SQL Server 2000 並非原生 64 位元應用程式,而是以 32 位元模式執行於 WOW 下,因此甚至不知道外界是 64 位元環境。

更確切地說,ia64 WOW 和 x64 WOW 是兩種截然不同的子系統。在 ia64 架構下,WOW 必須模擬受限制的虛擬位址空間,並進行實際的電腦指令模擬。ia64 電腦指令與 x86 完全不一樣,所以是截然不同的電腦。SQL Server 所有的元件 (SQL Server 2000 或 SQL Server 2005) 都不支援在 ia64 WOW 下執行。

而在 x64 WOW 下,情況則完全不同。x86 和 x64 電腦的架構非常相近。兩者擁有相同的指令集 (或幾乎相同),所以只需要模擬 32 位元虛擬位址空間,而硬體更可在這方面提供協助。因此,SQL Server 多數元件都支援 x64 WOW,比方 SQL Server 2000 SP4 及 SQL Server 2005 任一版本。