SQL Server 2005 - 如何進行背景自動安裝

摘要: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 中的父系功能名稱與子系功能名稱所示:

功能名稱

父系功能名稱

子系功能名稱

附註

SQL Server資料庫服務

SQL_Engine

 

 

WE

SQL Server資料檔

 

 

SQL_Data_Files

WE

複寫

 

 

SQL_Replication

WE

全文檢索搜尋引擎

 

 

SQL_FullText

W

 

 

 

 

 

 

 

 

Analysis Services

Analysis_Server

 

 

 

 

Analysis Services資料檔

 

 

AnalysisDataFiles

 

 

 

 

 

 

 

 

 

 

Reporting Services

RS_Server

 

 

 

 

報表管理員

 

 

RS_Web_Interface

 

 

 

 

 

 

 

 

 

 

Notification Services

Notification_Services

 

 

 

 

Notification Services 引擎元件

 

 

NS_Engine

 

 

Notification Services 用戶端元件

 

 

NS_Client

 

 

Notification Services 規則元件

 

 

NS_Rules

 

 

 

 

 

 

 

 

 

 

Integration Services

 

 

SQL_DTS

W

 

 

 

 

 

 

 

 

用戶端元件

Client_Components

 

 

WE

連接元件

 

 

Connectivity

WE

管理工具

 

 

SQL_Tools90

W

Business Intelligence Development Studio

 

 

SQL_WarehouseDevWorkbench

 

 

軟體開發套件

 

 

SDK

WE

SQLXML用戶端功能

 

 

SQLXML

W

傳統元件:Data Transformation Services 2000執行階段和DMO

 

 

Tools_Legacy

W

文件集和範例

 

 

SQL_Documentation

W

文件集

 

 

SQL_BooksOnline

W

SQL Server線上叢書

 

 

SQL_SQLServerBooksOnline

 

 

SQL Server 2005 Mobile Edition線上叢書

 

 

SQL_SQLServerMobileBooksOnline

 

 

範例資料庫

 

 

SQL_DatabaseSamples

W

AdventureWorks範例OLTP

 

 

SQL_AdventureWorksSamples

W

AdventureWorks範例資料倉儲

 

 

SQL_AdventureWorksDWSamples

W

AdventureWorks 範例OLAP

 

 

SQL_AdventureWorksASSamples

W

範例

 

 

SQL_Samples

W

圖表 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.EXESQLEXPR_ADV_CHT.EXE,而是直接將參數附加在 SQLEXPR_CHT.EXESQLEXPR_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