随着业务、企业规模的日益壮大,DB的数量也在不断增多,配置一台新增DB,从服务器的参数配置,磁盘阵列规划,DB安装部署,DB参数调优等等一列步骤下来,手工操作的效率变得越来越低,因为我负责的数据库近些时间,不断地迁移、新增,很能感觉到1人安装多台DB的问题,有两点:1. 要随时盯着安装进度,2单线程操作,慢!不夸张,同时装3台,一上午的工作效率就低了,干着其他工作还要想着安装到哪里了。所以,自动化,又一次不得不提。
进入主题,自动化安装,有些人看着陌生,有些人看着高大上,直到昨天,我也觉得我需要一些时间才能搞明白,最后的结论是:自动化安装就是那么简单,就是让你在几个小时内就可以搞定。
自动化安装,其实就是通过命令行,传入需要参数,执行setup.exe,这是核心,至于怎么扩展使用,因人而异。
补充一句:SQL Server 2008 R2 SP3已经发布http://www.microsoft.com/zh-cn/download/details.aspx?id=44271
一、自动化安装SQL Server 2008 R2(RTM)
1. 下载你需要的SQL Server版本 http://msdn.itellyou.cn/
2. 找到Setup.exe的安装物理路径.
3. 整理你需要的安装参数,参数很多,这里说的全新独立安装,不包含群集增加节点、更新升级。具体参数请见下表或联机丛书
(ms-help://MS.SQLCC.v10/MS.SQLSVR.v10.zh-CHS/s10sq_GetStart/html/df40c888-691c-4962-a420-78a57852364d.htm)
4. 通过管理员进入cmd,进入安装目录,执行Setup.exe /参数1 /参数2=value../参数N
通过以上4步,你的SQL Server 就可以成功安装了,学习自动化安装时,我遇到了几个问题,相信你们也会遇到:
联机丛书解释太官方,理解不清
参数太多,参数值如何正确设置,不易管理维护
第一安装,我也一个一个照着下表的参数去配置,结果一运行,各种失败~
SQL Server命令行安装提供一个ConfigurationFile.ini配置文件,可以将你要的参数配置在里面
Setup.exe /CONFIGURATIONFILE = 你的ConfigurationFile.ini物理地址
ConfigurationFile设置地址:
(ms-help://MS.SQLCC.v10/MS.SQLSVR.v10.zh-CHS/s10sq_GetStart/html/a832153a-6775-4bed-83f0-55790766d885.htm)
后来我在想,界面安装一次,每个人都会配置自己的安装内容,如果安装后有一个对应的ConfigurationFile.ini多好,于是我在已经按照要求安装的服务器上,搜到了ConfigurationFile.ini,里面就是我要的每一个参数和value,那我还需要做什么?拿来直接用呗~不过需要注意ConfigurationFile.ini里不包含密码和接受协议的参数,要额外加进去,具体参数下表都有,这里不做说明。
剩下的就是等待自动安装结束。
二、 SP补丁如何自动化安装
百度下SP补丁参数,结果很惨,基本搜不到。。。
于是乎,手工运行SP补丁,点击帮助,在这里
Then
CMD运行:
- <更新包名称>.exe /qs /IAcceptSQLServerLicenseTerms /Action=Patch /AllInstances
安装成功。
至此,SQL Server独立安装+SP补丁命令行安装结束,保留你需要的参数是核心,将安装程序放到共享上,多台服务器UNC远程调用安装,方便~
最后我想说。。我没有笑东风(高桑)的美女图片,我只能大方的将全部参数都贴上来供大家欣赏了~~
具体SQL Server 安装参数:
SQL Server 组件 |
参数 |
说明 |
SQL Server 安装程序控件 |
/ACTION 必需 |
需要它来指示安装工作流。 支持的值:
|
SQL Server 安装程序控件 |
/IACCEPTSQLSERVERLICENSETERMS 仅在为无人参与安装指定了 /Q 或 /QS 参数时是必需的。 |
必需,用于确认接受许可条款。 |
SQL Server 安装程序控件 |
/ENU 可选 |
当安装介质包括针对英语以及与操作系统相对应的语言的语言包时,使用此参数可以在已本地化的操作系统上安装英语版的 SQL Server。 |
SQL Server 安装程序控件 |
/CONFIGURATIONFILE 可选 |
指定要使用的 ConfigurationFile。 |
SQL Server 安装程序控件 |
/ERRORREPORTING 可选 |
指定 SQL Server 的错误报告。 有关详细信息,请参阅 Privacy Statement for the Microsoft Error Reporting Service(Microsoft 错误报告服务的隐私声明)。 支持的值:
|
SQL Server 安装程序控件 |
/FEATURES - 或 - /ROLE 必需 |
指定要安装的组件。 |
SQL Server 安装程序控件 |
/HELP、H、? 可选 |
显示安装参数的用法选项。 |
SQL Server 安装程序控件 |
/INDICATEPROGRESS 可选 |
指定应将详细的安装日志文件传送到控制台。 |
SQL Server 安装程序控件 |
/INSTALLSHAREDDIR 可选 |
为 64 位共享组件指定一个非默认安装目录。 |
SQL Server 安装程序控件 |
/INSTALLSHAREDWOWDIR 可选 |
为 32 位共享组件指定一个非默认安装目录。仅在 64 位系统上受支持。 |
SQL Server 安装程序控件 |
/INSTANCEDIR 可选 |
为特定于实例的组件指定一个非默认安装目录。 |
SQL Server 安装程序控件 |
/INSTANCEID 可选 |
为 InstanceID 指定一个非默认值。 |
SQL Server 安装程序控件 |
/INSTANCENAME 必需 |
指定 SQL Server 实例名称。 有关详细信息,请参阅实例配置。 |
SQL Server 安装程序控件 |
/PID 可选 |
指定 SQL Server 版本的产品密钥。如果未指定此参数,则使用 SQL Server Enterprise Evaluation。 |
SQL Server 安装程序控件 |
/Q 可选 |
指定在没有任何用户界面的情况下以静默模式运行安装程序。这适用于无人参与的安装。 |
SQL Server 安装程序控件 |
/QS 可选 |
指定安装程序通过 UI 运行并显示进度,但是不接受任何输入或显示任何错误消息。 |
SQL Server 安装程序控件 |
/UIMODE 可选 |
指定在安装过程中是否只提供最少数量的对话框。 /UIMode 只能与 /ACTION=INSTALL 和 UPGRADE 参数一起使用。 支持的值:
当与其他参数组合时,将覆盖 UIMODE。例如,当同时提供了 /UIMODE=AutoAdvance 和 /ADDCURRENTUSERASSQLADMIN=FALSE 时,当前用户将不会自动填充设置对话框。 UIMode 设置不能与 /Q 或 /QS 参数结合使用。 |
SQL Server 安装程序控件 |
/SQMREPORTING 可选 |
指定 SQL Server 的功能使用情况报告。 有关详细信息,请参阅 Privacy Statement for the Microsoft Error Reporting Service(Microsoft 错误报告服务的隐私声明)。 支持的值:
|
SQL Server 安装程序控件 |
/HIDECONSOLE 可选 |
指定控制台窗口隐藏或关闭。 |
SQL Server 代理 |
/AGTSVCACCOUNT 必需 |
指定 SQL Server 代理服务的帐户。 |
SQL Server 代理 |
/AGTSVCPASSWORD |
指定 SQL Server 代理服务帐户的密码。 |
SQL Server 代理 |
/AGTSVCSTARTUPTYPE 可选 |
指定 SQL Server 代理服务的启动模式。 支持的值:
|
Analysis Services |
/ASBACKUPDIR 可选 |
指定 Analysis Services 备份文件的目录。 默认值:
|
Analysis Services |
/ASCOLLATION 可选 |
指定 Analysis Services 的排序规则设置。 默认值:
|
Analysis Services |
/ASCONFIGDIR 可选 |
指定 Analysis Services 配置文件的目录。 默认值:
|
Analysis Services |
/ASDATADIR 可选 |
指定 Analysis Services 数据文件的目录。 默认值:
|
Analysis Services |
/ASLOGDIR 可选 |
指定 Analysis Services 日志文件的目录。 默认值:
|
Analysis Services |
/ASSVCACCOUNT 必需 |
指定 Analysis Services 服务的帐户。 |
Analysis Services |
/ASSVCPASSWORD |
指定 Analysis Services 服务的密码。 |
Analysis Services |
/ASSVCSTARTUPTYPE 可选 |
指定 Analysis Services 服务的启动模式。 支持的值:
|
Analysis Services |
/ASSYSADMINACCOUNTS 必需 |
指定 Analysis Services 的管理员凭据。 |
Analysis Services |
/ASTEMPDIR 可选 |
指定 Analysis Services 临时文件的目录。 默认值:
|
Analysis Services |
/ASPROVIDERMSOLAP 可选 |
指定 MSOLAP 提供程序是否可以在进程中运行。 默认值:
|
Analysis Services |
/FARMACCOUNT 对于 SPI_AS_NewFarm 是必需的 |
指定用于在场中运行 SharePoint 管理中心服务和其他重要服务的域用户帐户。 此参数仅用于通过 /ROLE = SPI_AS_NEWFARM 安装的 Analysis Services 实例。 |
Analysis Services |
/FARMPASSWORD 对于 SPI_AS_NewFarm 是必需的 |
指定场帐户的密码。 |
Analysis Services |
/PASSPHRASE 对于 SPI_AS_NewFarm 是必需的 |
指定用于向 SharePoint 场添加其他应用程序服务器或 Web 前端服务器的通行短语。 此参数仅用于通过 /ROLE = SPI_AS_NEWFARM 安装的 Analysis Services 实例。 |
Analysis Services |
/FARMADMINIPORT 对于 SPI_AS_NewFarm 是必需的 |
指定用于连接 SharePoint 管理中心 Web 应用程序的端口。 此参数仅用于通过 /ROLE = SPI_AS_NEWFARM 安装的 Analysis Services 实例。 |
SQL Server Browser |
/BROWSERSVCSTARTUPTYPE 可选 |
指定 SQL Server Browser 服务的启动模式。 支持的值:
|
SQL Server 数据库引擎 |
/ENABLERANU 可选 |
为 SQL Server Express 安装启用运行身份凭据。 |
SQL Server 数据库引擎 |
/INSTALLSQLDATADIR 可选 |
指定 SQL Server 数据文件的数据目录。 默认值:
|
SQL Server 数据库引擎 |
/SAPWD /SECURITYMODE=SQL 时是必需的 |
指定 SQL Server sa 帐户的密码。 |
SQL Server 数据库引擎 |
/SECURITYMODE 可选 |
指定 SQL Server 的安全模式。 如果未提供此参数,则支持仅 Windows 身份验证模式。 支持的值:
|
SQL Server 数据库引擎 |
/SQLBACKUPDIR 可选 |
指定备份文件的目录。 默认值:
|
SQL Server 数据库引擎 |
/SQLCOLLATION 可选 |
指定 SQL Server 的排序规则设置。 默认值:
|
SQL Server 数据库引擎 |
/ADDCURRENTUSERASSQLADMIN 可选 |
将当前用户添加到 SQL Server sysadmin 固定服务器角色。当安装 Express 版本或使用 /Role=ALLFeatures_WithDefaults 时,可以使用 /ADDCURRENTUSERASSQLADMIN 参数。有关详细信息,请参阅下面的 /ROLE。 使用 /ADDCURRENTUSERASSQLADMIN 是可选的,但 /ADDCURRENTUSERASSQLADMIN 或 /SQLSYSADMINACCOUNTS 是必需的。默认值:
|
SQL Server 数据库引擎 |
/SQLSVCACCOUNT 必需 |
指定 SQL Server 服务的启动帐户。 |
SQL Server 数据库引擎 |
/SQLSVCPASSWORD |
指定 SQLSVCACCOUNT 的密码。 |
SQL Server 数据库引擎 |
/SQLSVCSTARTUPTYPE 可选 |
指定 SQL Server 服务的启动模式。 支持的值:
|
SQL Server 数据库引擎 |
/SQLSYSADMINACCOUNTS 必需 |
使用此参数可将登录帐户设置为 sysadmin 角色的成员。 对于 SQL Server Express 之外的 SQL Server 版本,/SQLSYSADMINACCOUNTS 是必需的。对于 SQL Server Express 的各版本,使用 /SQLSYSADMINACCOUNTS 是可选的,但 /SQLSYSADMINACCOUNTS 或 /ADDCURRENTUSERASSQLADMIN 是必需的。 |
SQL Server 数据库引擎 |
/SQLTEMPDBDIR 可选 |
指定 tempdb 的数据文件的目录。 默认值:
|
SQL Server 数据库引擎 |
/SQLTEMPDBLOGDIR 可选 |
指定 tempdb 的日志文件的目录。 默认值:
|
SQL Server 数据库引擎 |
/SQLUSERDBDIR 可选 |
指定用户数据库的数据文件的目录。 默认值:
|
SQL Server 数据库引擎 |
/SQLUSERDBLOGDIR 可选 |
指定用户数据库的日志文件的目录。 默认值:
|
SQL Server 数据库引擎 |
/USESYSDB 可选 |
指定用于此安装的 SQL Server 系统数据库的位置。 指定的路径不得包括“\Data”后缀。 |
FILESTREAM |
/FILESTREAMLEVEL 可选 |
指定 FILESTREAM 功能的访问级别。 支持的值:
|
FILESTREAM |
/FILESTREAMSHARENAME 可选 当 FILESTREAMLEVEL 大于 1 时是必需的。 |
指定用来存储 FILESTREAM 数据的 Windows 共享的名称。 |
SQL Server 全文 |
/FTSVCACCOUNT 可选 |
指定全文筛选器启动器服务的帐户。 在 Windows Server 2008 和 Windows Vista 操作系统中忽略此参数。ServiceSID 是用来帮助保护 SQL Server 和全文筛选器后台程序之间的通信。如果未提供这些值,则将禁用全文筛选器启动器服务。您必须使用 SQL Server 控制管理器来更改服务帐户和启用全文功能。 默认值:
|
SQL Server 全文 |
/FTSVCPASSWORD 可选 |
指定全文筛选器启动器服务的密码。 在 Windows Server 2008 和 Windows Vista 操作系统中忽略此参数。 |
Integration Services |
/ISSVCACCOUNT 必需 |
指定 Integration Services 的帐户。 默认值:
|
Integration Services |
/ISSVCPASSWORD |
指定 Integration Services 密码。 |
Integration Services |
/ISSVCStartupType 可选 |
指定 Integration Services 服务的启动模式。 |
SQL Server 网络配置 |
/NPENABLED 可选 |
指定 SQL Server 服务的 Named Pipes 协议的状态。 支持的值:
|
SQL Server 网络配置 |
/TCPENABLED 可选 |
指定 SQL Server 服务的 TCP 协议的状态。 支持的值:
|
Reporting Services |
/RSINSTALLMODE 可选 |
指定 Reporting Services 的安装模式。 |
Reporting Services |
/RSSVCACCOUNT 必需 |
指定 Reporting Services 的启动帐户。 |
Reporting Services |
/RSSVCPASSWORD |
指定 Reporting Services 服务的启动帐户的密码。 |
Reporting Services |
/RSSVCStartupType 可选 |
指定 Reporting Services 的启动模式。 |
SP具体参数: |
|
开关 |
说明 |
/? |
显示无人参与安装命令提示符帮助 |
/action=Patch 或 /action=RemovePatch |
指定安装操作:Patch 或 RemovePatch。 |
/allinstances |
将 SQL Server 更新应用于所有 SQL Server 实例以及所有 SQL Server 共享组件和不识别实例的组件。 |
/instancename=InstanceName 1 |
将 SQL Server 更新应用于名为 InstanceName 的 SQL Server 实例以及所有 SQL Server 共享组件和不识别实例的组件。 |
/InstanceID=Inst1 |
将 SQL Server 更新应用于 SQL Server Inst1 实例,以及所有 SQL Server 共享组件和不识别实例的组件。 |
/quiet |
在无人参与模式下运行 SQL Server 更新安装程序。 |
/qs |
仅显示进度 UI 对话。 |
/CUSource |
指定提取的累积更新文件的路径。 |
/PCUSOURCE |
指定提取的 Service Pack 文件的路径。 |
/IAcceptSQLServerLicenseTerms |
仅在为无人参与安装指定了 /Q 或 /QS 参数时是必需的。 |