2009-10-16

安裝 SQL server 2008 Express

這兩天安裝了 SQL server 2008 Express, 終於也順利安裝完成, 供其他台機器上的系統存取。

但是, 在安裝的過程中, 並非那麼地 "next-step" 順利。

主要遇到了幾個問題:
(1) 安裝失敗
(2) 安裝成功後, 其他台無法馬上遠端連線之, 因為, SQL server 2008 Express 預設只提供 local 連線。

是的, 所以, 有了這一篇。
當然了, 如果你到網海中去搜尋, 一定也可以解決的。

接著就來描述一下這兩天的過程吧!


環境: windows 2003 Std. SP2 ( + more and more patch+eseses... )
        (PS: 上一行的 more and more 不是亂寫的, 往下看就會知道很重要!!!)

首先是下載。

我先下載了 SQL server 2008 Express 的安裝程式, 但是在後來處理遠端連線時, 才發現 MS 已經出了 SQL server 2008 service pack 1 了, 所以, 可以考慮直接下載 SQL server 2008 Express + SP1 的安裝程式。


接著, 在安裝過程中, 反覆安裝了幾次都是失敗、失敗、再失敗。
查了查網路上, 還真不只有我這個樣子。
再仔細看了一下安裝失敗的記錄 (in c:\Program Files\Mxxx\20091016xxx.log), 的確就是這個問題:
MS XML parser 的版本不合!

這時檢查系統安裝的程式或補丁, 看到了 MS XML parser service pack 2。就是這一個更新, 與 SQL server 2008 Express 不相容啊!
(PS: 如果作業系統是剛安裝完、剛出爐的, 應該就不會有這個安裝失敗的狀況。)

知道了就好處理了。
先移除 MS XML parser service pack 2, 再重新安裝一次, 就成功了。
可能新版會修正這個問題吧! 我想。

直接使用安裝上的 SQL Server Management Studio, 連線沒有問題。

對了, 重要的一點是連線的 instance : hostname\SQLExpress !
如果是要錢的正式版本, 直接指定 host name 就可以了, 但是 Express 版本的話, 就要再 host name 後再加上反斜線 \ , 再加上 SQLExpress (大小寫應都可以).


再來, 就是其他台機器可不可以連線呢?

安裝後, 答案是不行。因為 SQL server 2008 Express 預設只給 local 使用。
好的東西不能廣為使用, 有點太可惜了。

爬文之後, 有幾個地方可以設定的, 首先參考這一篇
這篇裡, 版主很熱心地將重點貼了二帖, 希望加強藥效。
看起來, make sense! 就是要將允許遠端連線的設定打開。
如果不想連過去看的, 我就借花來一下:
(1) 在 SQL server 組態管理員中, 將 TCP/IP 的協定打開。(這個重要! 因為安裝完預設沒有啟用。)

(2) 在 SQL server management studio 之物件總管中, database instance 按右鍵選內容, 哦, 選屬性:
     連接 - 允許此伺服器之遠端連接 要打開 (不過, 這個東東, 安裝完預設就是打開的了。)
     或者, 按右鍵選屬性, 哦, 這次要改選  Facet - 伺服器組態 - RemoteAccessEnabled, 設為 True。(這個, 安裝完, 也是 True.)

但是, 連續劇還沒有到落幕的時候啊~~ 因為, 遠端機器還是連不上啊...
不論是用 hostname\SQLEXPRESS, hostname/SQLEXPRESS, hostname\express, hostname..., 都不行!

那麼, 我就下載安裝了 SQL server 2008 Express sp1, 重開機後, 答案一樣不行。

這時, 有篇文章如雪花般降臨了。
這篇文章如論文般的詳盡且長篇, 而我..., 不好意思地, 直接 locate 到出現"遠端連線"的地方:

在服務帳戶裡還有一個預設停用的「SQL Server Browser」服務。如果你有需要使用遠端連線到SQL Server的話,建議把這個SQL Server Browser改為「自動」啟用。簡單說,這個服務也就是讓Server的資料庫也能讓遠端連線進來進行作業。

例如我常需要在我的NB或PC上連到遠端SQL Server伺服器,但如果SQL Server這台伺服器沒有開SQL Server Browser的話,那你怎麼連也連不進來,就算設定了port 1433也沒用。

Hom Dou Ni???!!!

是 SQL server Browser 這個服務沒有啟動的關係嗎?
果真預設沒有啟動!! 我再看了一下之前安裝 SQL server 2005 Express 的機器上, 這個服務是啟動的!
那, 果真八九不離十了, 馬上啟動 SQL server browser !!
(PS: SQL server browser 請看 MS TechNet 文件庫)

果真, 可以遠端連線了!!!
這種喜悅還真不是口水可以形容的。不知道兩天的帳單可否寄給 Mx.......



最後, 小結一下:
  1. 安裝如果因為 XML parser 版本的原因失敗, 先移除 XML parser sp2, 再重裝一次即可成功。
  2. 如果想要使用遠端連線, 要打開一個設定 + 檢查一個設定 + 啟動一個服務:
    打開 TCP/IP 協定 + 檢查允許遠諯連線( or RemoteAccessEnabled) + 啟動 SQL server browser 服務
打完收工!

Enjoy your our MS SQL server 2008 Suppress Express.

OMG!

0 意見:

張貼留言