摘要:SQL Server 2005 - 如何進行背景自動安裝
Microsoft® SQL Server™ 2005 不論那一種版本(例如:Enterprise、Standard)都提供背景安裝與移除功能,在此我們將以 Express Edition 為例來討論如何使用四種方式來背景自動安裝SQL Server 2005。
附註:
其實,第四種方式是從第三種方式衍生出的另外一種變形,但這兩種方式只適用於 SQL Server 2005 Express Edition。
第一種安裝方式
第一種方式,如圖表 1、圖表 2 所示,可以先使用 -x 參數,或其他的壓縮軟體(例如:WinRar)將所下載的 SQL Server™ 2005 Express 安裝檔案 SQLEXPR_CHT.EXE(就是 Microsoft® SQL Server™ 2005 Express Edition 的繁體中文安裝程式)或是 SQLEXPR_ADV_CHT.EXE(就是 Microsoft® SQL Server™ 2005 Express Edition with Advanced Services 的繁體中文安裝程式)解開。
圖表 1
圖表 2
然後開啟「命令提示字元」並切換到存放解開 SQL Server™ 2005 Express 安裝檔案的目錄,使用下面的指令進行安裝 SQL Server™ Database Engine 與 Client 端元件,所安裝的執行個體名稱將會是 SQLEXPRESS,如果您要指定其他的執行個體名稱、使用者名稱或公司名稱,請自行更換相對應的設定值(如圖表 3 所示):
start /wait setup.exe /qn INSTANCENAME=SQLEXPRESS ADDLOCAL=SQL_Engine,Client_Components USERNAME=章立民研究室 COMPANYNAME=章立民研究室
圖表 3
參數說明:
1. start /wait 是指定要等待 SQL Server™ 2005 Express 安裝程式結束後,才可以繼續再鍵入新的指令。請參考 Windows「命令提示字元」關於 start 指令的說明。
2. /qn 參數指定「安裝程式」(Msiexec.exe)在執行時,不顯示使用者介面(這包括:對話視窗和錯誤訊息),此時,所有的安裝訊息(包括錯誤訊息),都會寫到安裝記錄檔中。
3. ADDLOCAL 參數的內容會區分大小寫,且需以逗號分隔的清單,而這些清單之間不得有空格出現(就是不能按下空白鍵),否則安裝程式將無法以您所指定的功能名稱進行安裝。ADDLOCAL 參數一覽如圖表 4 中的父系功能名稱與子系功能名稱所示:
|
圖表 4
附註欄位中的 W 表示該項功能是 Workgroup Edition 才提供的功能,而 E 表示 Express Edition才 提供該項功能。
All 可以代表上述所有的功能名稱,但這會與您所安裝的 SQL Server 版本而包含不同的功能,比方說,所安裝的是Express Edition 時,All 代表的是,SQL_Engine(包含:SQL_Data_Files、SQL_Replication)、Client_Components(包含:Connectivity、SDK)。
4. 因為未指定「服務帳戶」所以預設會使用「本機系統」(LocalSystem)帳戶來啟動 SQL Server、SQL Server Browser 這兩個服務,如果要指定啟動服務帳戶的話,請加入下面幾個參數:
SQLACCOUNT= ———>啟動 SQL Server 的帳號
SQLPASSWORD= ———>啟動 SQL Server 帳號的密碼
SQLBROWSERACCOUNT= ———>啟動 SQL Server Browser 的帳號
SQLBROWSERPASSWORD= ———>啟動 SQL Server Browser 帳號的密碼
5. 若有指定帳戶的話,請注意相關帳戶的密碼不得為空白,建議使用增強式密碼,就是密碼要符合下列原則:
- 密碼不能有下列字元出現:
空白或 NULL 條件
Password
Admin
Administrator
sa
sysadmin
- 密碼不得為與安裝電腦具有下列相關的字元:
目前登入機器的使用者名稱
機器名稱
- 密碼長度必須為 8 個字元以上,且至少滿足下列 4 項條件中的任 3 項:
必須包含大寫字母
必須包含小寫字母
必須包含數字
必須包含非英數字元,比方說: #、%、^ 等等
請注意:
於 SQL Server 2005 所指定的密碼是有區分大小寫。
6. 各參數的值如果有空白,請使用一對「"」將其包含起來,如下所示即是一例:
INSTANCENAME="章立民研究室 SQL SERVER"
7. SQL Server 2005 安裝程式的摘要記錄會儲存在 %ProgramFiles%\Microsoft SQL Server\90\Setup Bootstrap\LOG\Summary.txt 中。
該記錄檔僅會記錄最近一次的安裝記錄或移除記錄,因此若需察看其他安裝或移除的記錄,請看 %ProgramFiles%\Microsoft SQL Server\90\Setup Bootstrap\LOG\Files 裡面的其他檔案。或是解開 %ProgramFiles%\Microsoft SQL Server\90\Setup Bootstrap\LOG\SqlSetup.cab 的檔案。
如果在 Summary.txt 記錄檔的最後幾行有看到如下的訊息,即表示安裝或移除成功(如圖表 5 所示):
安裝程式已經成功安裝,請詳細檢查記錄檔,以瞭解所有元件的狀態。
圖表 5
8. 欲移除 SQL Server 2005 Express 請將「命令提示字元」開啟在存放解開 SQL Server™ 2005 Express安裝檔案的目錄,接著鍵入如下的指令:
start /wait setup.exe /qn INSTANCENAME=SQLEXPRESS REMOVE=SQL_Engine,Client_Components
如果您已經很確認不再需要 SQL Server 2005 Express,就可以直接在 REMOVE 的參數值使用 All 來減少所要輸入的 SQL Server 2005 Express 功能名稱,如下所示即是一例:
start /wait setup.exe /qn INSTANCENAME=SQLEXPRESS REMOVE=All
特別提醒大家,要記得指定所欲移除的執行個體名稱,此舉是為了避免當您的電腦安裝多個 SQL Server 執行個體時,移除程式不知道該移除那個執行個體。
9. 執行個體名稱當然可以使用中文,但一般來說,為了便於開發人員的程式設計與資料庫人員的管理作業,我們較少使用中文的執行個體名稱。
第二種安裝方式
第二種安裝的方式,就是將上述的參數寫成一個文字檔,例如:章立民研究室_安裝 .txt。如圖表 6 所示,在「命令提示字元」下鍵入如下的指令(因為 setup.exe 程式笨笨的,所以一定要指定參數檔案「章立民研究室_安裝.txt」的所在目錄):
start /wait setup.exe /settings C:章立民研究室_安裝.txt /qn
圖表 6
「章立民研究室_安裝.txt」其檔案內容如下所示(如圖表 7 所示):
[Options]
USERNAME=章立民研究室
COMPANYNAME=章立民研究室
INSTANCENAME=SQLEXPRESS
ADDLOCAL=SQL_Engine,Client_Components
圖表 7
其實,這個方式就是使用文書編輯器來把我們先前使用方法一的那些參數,以行為單位,鍵入到一個文字檔中,再於安裝時,使用 /settings 參數來指定安裝設定檔所在路徑與名稱。
請注意:
1. [Options] 區塊的宣告一定要存在,不可省略。
2. 其他的注意事項(例如:密碼設定),請參考先前第一種方式的注意說明。
3. 欲移除時,請使用內容如下所示的「章立民研究室_移除.txt」檔案(如圖表 8 所示):
[Options]
INSTANCENAME=SQLEXPRESS
REMOVE=SQL_Engine,Client_Components
如果您已經很確認不再需要 SQL Server 2005 Express,就可以直接在 REMOVE 的參數值使用 All 來減少所要輸入的 SQL Server 2005 Express 功能名稱:
[Options]
INSTANCENAME=SQLEXPRESS
REMOVE=All
圖表 8
第三種安裝方式
第三種安裝方式是不解開 SQLEXPR_CHT.EXE 或SQLEXPR_ADV_CHT.EXE,而是直接將參數附加在 SQLEXPR_CHT.EXE 或 SQLEXPR_ADV_CHT.EXE 之後(如圖表 9 所示):
start /wait SQLEXPR_CHT.EXE -q /NoRebootChk /qn REBOOT=ReallySuppress
INSTANCENAME=SQLEXPRESS ADDLOCAL=SQL_Engine,Client_Components USERNAME=章立民研究室 COMPANYNAME=章立民研究室
圖表 9
移除的指令如下所示:
start /wait SQLEXPR_CHT.EXE -q /NoRebootChk /qn REBOOT=ReallySuppress INSTANCENAME=SQLEXPRESS REMOVE=SQL_Engine,Client_Components
參數說明:
1. –q 是指定不要出現 SQL Server™ 2005 Express 安裝程式的解壓縮過程對話方塊。由此可見,使用這種方式安裝時,安裝程式也是先解壓縮然後再進行安裝程序。
2. /NoRebootChk 指定安裝程式不要進行重新開機檢查。當我們透過圖形化介面的安裝程式進行安裝時,安裝程式會先檢查是否先前是否有安裝其他程式,而這些安裝程式需要重新開機才能運作正常,此時,加上這個參數就非常有用。
3. /qn 參數會抑制所有「安裝程式」對話視窗和錯誤訊息的顯示,所有安裝的訊息(包括錯誤訊息),都會被寫入安裝記錄檔中。
4. REBOOT=ReallySuppress 指定在安裝 SQL Server 之後,不需要重新啟動作業系統,進行重新開機的動作。其實很多微軟的安裝程式都允許在 /qn 參數之後,緊接著使用 REBOOT=ReallySuppress 參數,比方說,Virtual Server 2005。
請注意:
1. 使用此法安裝 SQL Server 2005 Express 時,將不會產生摘要記錄檔(%ProgramFiles%Microsoft SQL Server90Setup BootstrapLOGSummary.txt)。
欲察看記錄時,請直接察看位於下面目錄中的記錄檔:
%ProgramFiles%\Microsoft SQL Server\90\Setup Bootstrap\LOG\Files
2. 各參數的值如果有空白,請使用一對「"」將其包含起來,例如:
INSTANCENAME="章立民研究室 SQL SERVER"
第四種安裝方式
第四種安裝方式,是混闔第二種與第三種方式,先建立一個安裝或移除的參數檔,然後將第三種安裝方式所指定的 SQL Server 參數取代成參數檔。比方說要安裝 SQL Server,便可用如下所示的指令(如圖表 10 所示):
start /wait SQLEXPR_CHT.EXE -q /NoRebootChk /qn REBOOT=ReallySuppress /settings C:章立民研究室_安裝.txt
如圖表 11 所示,若要移除 SQL Server 2005 Express,只要使用如下所示的指令:
start /wait SQLEXPR_CHT.EXE -q /NoRebootChk /qn REBOOT=ReallySuppress /settings C:章立民研究室_移除.txt
圖表 10
圖表 11