零、基本環境與下載

SQL Server 2008(32/64位)下載地址:
鏈接:https://pan.baidu.com/s/1eR5bAme 密碼:f3bh SQL Server 2008R2(32/64位)下載地址: 鏈接: https://pan.baidu.com/s/1o8huYUI 密碼: dqff
一、進入安裝程序
插入SQL Server 2008 R2安裝光盤,自動運行后出現“SQL Server安裝中心”。
在這里我們在本機安裝一個SQL Server默認實例,所以執行以下步驟:
1、在左側的目錄樹中選擇“安裝”。
2、在右側的選擇項中,選擇第1項目“全新安裝或向現有安裝添加功能”,然后就進入了安裝程序。

二、安裝的准備過程
1、安裝程序支持規則
在這個准備過程里,首先安裝程序要掃描本機的一些信息,用來確定在安裝過程中不會出現異常。如果在掃描中發現了一些問題,則必須在修復這些問題之后才可能重新運行安裝程序進行安裝。

2、產品密鑰

3、許可條款

4、安裝程序支持文件
在這個步驟,安裝程序需要在本機上安裝一些必要的組件。

三、功能選擇與配置
接下來,才是正式安裝SQL Server程序。
1、安裝程序支持規則
這個步驟看起來跟剛才在准備過程中的一樣,都是掃描本機,防止在安裝過程中出現異常。現在並不是在重復剛才的步驟,從下圖明顯看出這次掃描的精度更細,掃描的內容也更多。
在這個步驟中,一定不要忽略“Windows防火牆”這個警告,因為如果在Windows2008操作系統中安裝SQL Server,操作系統不會在防火牆自動打開TCP1433這個端口。將在后面的文章中提到這個問題。

2、設置角色
這里有3個選項可供選擇。我們選擇“SQL Server功能安裝”。

3、功能選擇
在這里,我們點一下“全選”按鈕,會發現左邊的目錄樹多了幾個項目:在“安裝規則”后面多了一個“實例配置”,在“磁盤空間要求”后面多了“服務器配置”、“數據庫引擎配置”、“Analysis Services配置”和“Reporting Services配置”。

注:如果只需要安裝SQL Server 客戶端(SQL Server Native Client),只需要選擇“客戶端工具連接(Client Tools Connectivity)”。
注:如果只需要安裝管理工具,只需選擇基本或完整模塊。
4、安裝規則
在這里又要掃描一次本機,掃描的內容跟上一次又不同。

5、實例配置
我們這里安裝一個默認實例。系統自動將這個實例命名為:MSSQLSERVER 。

6、磁盤空間要求
從這里可以看到,安裝SQL Server的全部功能需要5485MB的磁盤空間。

7、服務器配置
在這里,首先要配置服務器的服務帳戶,也就是讓操作系統用哪個帳戶啟動相應的服務。 為了省事,我們選擇“對所有SQL Server服務使用相同的帳戶”。

重點說明:
內置賬戶詳細解釋:
1.LocalSystem:預設的擁有本機所有權限的本地賬戶,這個賬戶跟通常的用戶賬戶沒有任何關聯,也沒有用戶名和密碼之類的憑證。這個服務賬戶可以打開注冊表的HKEY_LOCAL_MACHINE\Security鍵,當LocalSystem訪問網絡資源時,它是作為計算機的域賬戶使用的。
舉例:以LocalSystem賬戶運行的服務主要有:WindowsUpdate Client、Clipbook、Com+、DHCP Client、Messenger Service、Task Scheduler、Server Service、Workstation Service,還有Windows Installer。
2.Network Service:預設的擁有本機部分權限的本地賬戶,它能夠以計算機的名義訪問網絡資源。但是他沒有Local System那么多的權限,以這個賬戶運行的服務會根據實際環境把訪問憑據提交給遠程的計算機。Network Service賬戶通常可以訪問Network Service、Everyone組,還有認證用戶有權限訪問的資源。
舉例:以Network Service賬戶運行的服務主要有:Distributed Transaction Coordinator、DNS Client、Performance Logs and Alerts,還有RPC Locator。
3.Local Service:預設的擁有最小權限的本地賬戶,並在網絡憑證中具有匿名的身份。Local Service賬戶通常可以訪問Local Service、Everyone組還有認證用戶有權限訪問的資源。
舉例:以Local Service賬戶運行的服務主要有:Alerter、Remote Registry、Smart Card、SSDP,還有WebClient。
簡單來說:
1.Local system:本地系統用戶,個人電腦通常選擇這個用戶
2.Network service:網絡服務用戶,通常需要遠程連接的都使用這個
3.Local Service:本地服務
接着,還要設備排序規則。

8、數據庫引擎配置
數據庫引擎的設置主要有3項。



9、Analysis Services配置


10、Reporting Services配置

11、錯誤報告

12、安裝配置規則

四、安裝進度
完成上述功能選擇和配置之后,就要開始安裝了。
首先,是讓我們確認一下安裝選項。

確認之后,點“安裝”按鈕,機器的硬盤就開始狂轉。如果是全新安裝,這個過程大概需要一個半小時(視磁盤的速度而定)。

直到最后,出現了這個畫面,總算大功告成了。

安裝結束之后,摘要日志會保存在以下位置:<數據根目錄>\100\Setup Bootstrap\Log\<YYYYMMDD_HHMMSS>\Sumary_<PC name>_<YYYYMMDD_HHMMSS>.txt
系統配置的檢查報告保存在以下位置::<數據根目錄>\100\Setup Bootstrap\Log\<YYYYMMDD_HHMMSS>\SystemConfigurationCheck_Report.htm
SQL SERVER靜默安裝
參考:sql server靜默安裝/無人值守安裝(sql server2016)
SQL Server 安裝時,需要在各個安裝窗口進行選擇和設置,若需要在多台服務器安裝相同的數據庫,靜默安裝是比較省事的。
當安裝 SQL Server 到最后一步,會有一個安裝配置文件 ConfigurationFile.ini

該文件記錄了前面步驟的設置,匯總到該配置文件中。如下:(此示例是在域中安裝且使用域管理員作為相關賬戶)
;SQL Server 2012 Configuration File [OPTIONS] ; Specifies a Setup work flow, like INSTALL, UNINSTALL, or UPGRADE. This is a required parameter. ACTION="Install" ; Detailed help for command line argument ENU has not been defined yet. ENU="True" ; Parameter that controls the user interface behavior. Valid values are Normal for the full UI,AutoAdvance for a simplied UI, and EnableUIOnServerCore for bypassing Server Core setup GUI block. UIMODE="Normal" ; Setup will not display any user interface. QUIET="False" ; Setup will display progress only, without any user interaction. QUIETSIMPLE="False" ; Specify whether SQL Server Setup should discover and include product updates. The valid values are True and False or 1 and 0. By default SQL Server Setup will include updates that are found. UpdateEnabled="True" ; Specifies features to install, uninstall, or upgrade. The list of top-level features include SQL, AS, RS, IS, MDS, and Tools. The SQL feature will install the Database Engine, Replication, Full-Text, and Data Quality Services (DQS) server. The Tools feature will install Management Tools, Books online components, SQL Server Data Tools, and other shared components. FEATURES=SQLENGINE,SSMS,ADV_SSMS ; Specify the location where SQL Server Setup will obtain product updates. The valid values are "MU" to search Microsoft Update, a valid folder path, a relative path such as .\MyUpdates or a UNC share. By default SQL Server Setup will search Microsoft Update or a Windows Update service through the Window Server Update Services. UpdateSource="MU" ; Displays the command line parameters usage HELP="False" ; Specifies that the detailed Setup log should be piped to the console. INDICATEPROGRESS="False" ; Specifies that Setup should install into WOW64. This command line argument is not supported on an IA64 or a 32-bit system. X86="False" ; Specify the root installation directory for shared components. This directory remains unchanged after shared components are already installed. INSTALLSHAREDDIR="C:\Program Files\Microsoft SQL Server" ; Specify the root installation directory for the WOW64 shared components. This directory remains unchanged after WOW64 shared components are already installed. INSTALLSHAREDWOWDIR="C:\Program Files (x86)\Microsoft SQL Server" ; Specify a default or named instance. MSSQLSERVER is the default instance for non-Express editions and SQLExpress for Express editions. This parameter is required when installing the SQL Server Database Engine (SQL), Analysis Services (AS), or Reporting Services (RS). INSTANCENAME="MSSQLSERVER" ; Specify the Instance ID for the SQL Server features you have specified. SQL Server directory structure, registry structure, and service names will incorporate the instance ID of the SQL Server instance. INSTANCEID="MSSQLSERVER" ; Specify that SQL Server feature usage data can be collected and sent to Microsoft. Specify 1 or True to enable and 0 or False to disable this feature. SQMREPORTING="False" ; Specify if errors can be reported to Microsoft to improve future SQL Server releases. Specify 1 or True to enable and 0 or False to disable this feature. ERRORREPORTING="False" ; Specify the installation directory. INSTANCEDIR="C:\Program Files\Microsoft SQL Server" ; Agent account name AGTSVCACCOUNT="KK\dcadmin" ; Auto-start service after installation. AGTSVCSTARTUPTYPE="Automatic" ; CM brick TCP communication port COMMFABRICPORT="0" ; How matrix will use private networks COMMFABRICNETWORKLEVEL="0" ; How inter brick communication will be protected COMMFABRICENCRYPTION="0" ; TCP port used by the CM brick MATRIXCMBRICKCOMMPORT="0" ; Startup type for the SQL Server service. SQLSVCSTARTUPTYPE="Automatic" ; Level to enable FILESTREAM feature at (0, 1, 2 or 3). FILESTREAMLEVEL="0" ; Set to "1" to enable RANU for SQL Server Express. ENABLERANU="False" ; Specifies a Windows collation or an SQL collation to use for the Database Engine. SQLCOLLATION="Chinese_PRC_CI_AS" ; Account for SQL Server service: Domain\User or system account. SQLSVCACCOUNT="KK\dcadmin" ; Windows account(s) to provision as SQL Server system administrators. SQLSYSADMINACCOUNTS="KK\dcadmin" "Administrator" ; The default is Windows Authentication. Use "SQL" for Mixed Mode Authentication. SECURITYMODE="SQL" ; Provision current user as a Database Engine system administrator for SQL Server 2012 Express. ADDCURRENTUSERASSQLADMIN="False" ; Specify 0 to disable or 1 to enable the TCP/IP protocol. TCPENABLED="1" ; Specify 0 to disable or 1 to enable the Named Pipes protocol. NPENABLED="0" ; Startup type for Browser Service. BROWSERSVCSTARTUPTYPE="Disabled"
此配置文件是通過UI操作的,不適於靜默安裝,需要修改寫配置。
如當前自己用虛擬機測試的集群中獨立安裝MSSQL,虛擬機不做什么要求,在其他節點都執行相同的配置文件靜默安裝sql server。
其中修改如下:
; SQL Server 2012 Configuration File
; 參考:https://msdn.microsoft.com/zh-cn/library/ms144259.aspx
[OPTIONS]
; ACTION 可選為 INSTALL(安裝), UNINSTALL(卸載), UPGRADE(升級)
ACTION="Install"
; 【新增】必需,用於確認接受許可條款,靜默安裝用。
IACCEPTSQLSERVERLICENSETERMS
; 【新增】產品密鑰。 如果未指定此參數,則使用 Evaluation。
PID="XXXXX-XXXXX-XXXXX-XXXXX-XXXXX"
; 在已本地化的操作系統上安裝英文版的 SQL Server。
ENU="True"
; 【注釋】UIMODE 可選為Normal,AutoAdvance (UIMode 設置不能與 /Q (QUIET)或 /QS(QUIETSIMPLE)參數結合使用)
; Normal : 非 Express 版本,所選的功能提供其所有安裝程序對話框。
; AutoAdvance : 對於 Express 版本是默認值,它跳過不重要的對話框
; UIMODE="Normal"
; 【注釋】是否靜默安裝,靜默安裝不顯示用戶交互界面.QUIET 與 QUIETSIMPLE 二選一
; QUIET="True"
; 是否只顯示進度(最后一步安裝進度),不顯示用戶交互界面。靜默安裝還是顯示進度吧。
QUIETSIMPLE="True"
; 是否應發現和包含產品更新,不更新。
UpdateEnabled="False"
; 安裝的功能,此為 MSSQL存儲引擎 和 SSMS管理工具
FEATURES=SQLENGINE,SSMS,ADV_SSMS
; SQL Server 安裝程序將獲取產品更新的位置( .\MyUpdates)
UpdateSource="MU"
; 顯示安裝參數的用法選項,不顯示
HELP="False"
; 指定是否將詳細的安裝日志文件傳送到控制台。(此禁用或只看進度即可 QUIETSIMPLE="True")
; 安裝過程日志信息:C:\Program Files\Microsoft SQL Server\110\Setup Bootstrap\Log
INDICATEPROGRESS="True"
; 是否允許32位程序安裝到64位系統上(WOW64)
X86="False"
; 為 64 位共享組件指定一個非默認安裝目錄。
INSTALLSHAREDDIR="C:\Program Files\Microsoft SQL Server"
; 為 32 位共享組件指定一個非默認安裝目錄。 僅在 64 位系統上受支持。
INSTALLSHAREDWOWDIR="C:\Program Files (x86)\Microsoft SQL Server"
; 實例名稱
INSTANCENAME="MSSQLSERVER"
; 實例ID
INSTANCEID="MSSQLSERVER"
; 是否收集使用數據發送到 Microsoft(是:1 or True;否:0 or False )
SQMREPORTING="False"
; 是否將錯誤反饋發送到 Microsoft(是:1 or True;否:0 or False )
ERRORREPORTING="False"
; 安裝目錄
INSTANCEDIR="C:\Program Files\Microsoft SQL Server"
; 【新增】代理服務賬戶(新增密碼項)
AGTSVCACCOUNT="KK\dcadmin"
AGTSVCPASSWORD="dcadmin"
; 代理啟動模式,設置自動
AGTSVCSTARTUPTYPE="Automatic"
; CM 程序塊 TCP 通信端口(未知)
COMMFABRICPORT="0"
; 矩陣如何使用專用網絡(未知)
COMMFABRICNETWORKLEVEL="0"
; 如何保護程序塊間的通信(未知)
COMMFABRICENCRYPTION="0"
; CM 程序塊使用的 TCP 端口(未知)
MATRIXCMBRICKCOMMPORT="0"
; SQL Server 引擎服務的啟動模式
SQLSVCSTARTUPTYPE="Automatic"
; FILESTREAM 是否啟用,值為 (0, 1, 2 or 3).
FILESTREAMLEVEL="0"
; 為 SQL Server Express 安裝啟用運行身份憑據。
ENABLERANU="False"
; SQL Server 的排序規則設置
SQLCOLLATION="Chinese_PRC_CI_AS"
; 【新增】SQL Server 服務的啟動帳戶(新增密碼項)
SQLSVCACCOUNT="KK\dcadmin"
SQLSVCPASSWORD="dcadmin"
; 指定 Windows 賬戶作為數據庫管理員
SQLSYSADMINACCOUNTS="KK\dcadmin" "Administrator"
; 【新增】SQL授權模式,"SQL"為混合授權,需設置密碼(新增密碼項)
SECURITYMODE="SQL"
SAPWD="dcadmin"
; 【注釋】當前用戶作為數據庫管理員(對於 SQL Server Express 版本為 True,其他未true)
; ADDCURRENTUSERASSQLADMIN="True"
; 指定 SQL Server 服務的 TCP 協議的狀態(0:禁用;1:啟用)
TCPENABLED="1"
; 指定 SQL Server 服務的 Named Pipes 協議的狀態(0:禁用;1:啟用)
NPENABLED="0"
; SQL Server Browser 服務的啟動模式,禁用。
BROWSERSVCSTARTUPTYPE="Disabled"
修改完成后,進入 mssql 安裝目錄, 執行 setup.exe 安裝:
.\setup.exe /CONFIGURATIONFILE="C:\PerfLogs\ConfigurationFile.ini"

等待完成即可,若出現中斷,查看安裝日志什么錯誤。
C:\Program Files\Microsoft SQL Server\110\Setup Bootstrap\Log
此外,還可以單獨設置數據文件的數據目錄(INSTALLSQLDATADIR)等
配置文件可以事先編輯保存,然后作為自動應答文件由安裝程序直接調用。由於配置文件不包括密碼等敏感信息,因此在命令行中需要指定相應的密碼。例如:
| Setup.exe /SQLSVCPASSWORD="password" /AGTSVCPASSWORD="password" /ASSVCPASSWORD="password" /ISSVCPASSWORD="password" /RSSVCPASSWORD="password" /ConfigurationFile=C:\PerpareSetup\ConfigurationFile.ini |
如果 ConfigurationFile.ini 配置文件中的參數跟命令行輸入的參數出現不一致的,會優先使用命令行的參數。
【參考文檔】
安裝轉自:http://blog.51cto.com/jimshu/585023
我的另外一篇靜默安裝(基於sql server2016):https://www.cnblogs.com/gered/p/13362643.html
























