每当这种情况发生的时候,我总会心里默念道:杯具啊,这辈子也装不完了。因为SQL Server的安装还是比较复杂的,要先安装.Net、Windows Installer,在正式安装的过程中还要交互的填写各种参数,当然这个还不包括拷贝3GB多的安装文件的时间。在经历了几次这样的悲剧之后,我果断的意识到必须研究一下写个脚本改变这个残酷的现实。 前段时间会学校毕业答辩我终于暂时离开了繁重的工作,能找个时间研究一下脚本了。刚开始实验这个脚本的时候,由于同学喊我打游戏,我就偷懒没准备实验环境,直接用我的本子跑了安装程序,然后就切到游戏去了。结果后来还造成了我本子的系统出现了很难解释的错误,详细的情况我写在上篇BLOG里了,悲剧的《BITS服务异常引发CPU满载》。惨痛的教训告诉我们,作实验还是要虚拟机里做比较安全。 实验环境: 在VMware里面装了个Windows server 企业版 X SP2,用的是SQL Server R2。安装文件解压后保存虚拟机快照,保存下这个纯净的系统环境,这样可以随时还原回来,重新实验。 自动化脚本: Setup.exe /QS Setup.exe /QS /ACTION=Install /IACCEPTSQLSERVERLICENSETERMS /FEATURES=SQLEngine,IS,SSMS /INSTANCENAME=MSSQLSERVER /INSTALLSQLDATADIR="D:sqlserverdata" /AGTSVCACCOUNT="SYSTEM" /AGTSVCSTARTUPTYPE="Disabled" /SQLSVCACCOUNT="SYSTEM" /SQLSVCSTARTUPTYPE="Automatic" /ISSVCACCOUNT="SYSTEM" /ISSVCStartupType="Automatic" /ISSVCACCOUNT="LOCAL SERVICE" /ISSVCStartupType="Automatic" /SQLSYSADMINACCOUNTS="hanxu" pause 整个脚本最主要的部分就是上面的两段,其实安装并把参数传递进去原本只需要一行。但是由于SQL Server的安装过程比较特殊,所以需要分为两行来写。真正的安装需要先安装.NET补丁和Windows Installer的补丁,在安装完毕Windows Installer之后整个程序会中断。所以第一行的那个不带很长参数的就是为了触发安装.NET补丁和Windows Installer的补丁。这两个补丁被安装之后程序会中断,所以这里也不需要附带很长的参数。第二行那个带很长参数的才是真正的SQL Server的安装过程。 在这个很长的一大串参数里面,其实归纳一下也还是有规律的。 首先就是/QS /ACTION=Install /IACCEPTSQLSERVERLICENSETERMS,这些参数用于设定安装模式、同意授权协议。 然后,/FEATURES=SQLEngine,IS,SSMS /INSTANCENAME=MSSQLSERVER /INSTALLSQLDATADIR="D:sqlserverdata"这些参数设定安装的组件和实例信息。 这里有一点的觉得需要说明一下的,脚本安装时支持设定Windows和SQL认证的,如果什么参数都不填就是默认Windows认证。我这里强烈建议用Windows认证方式,如果需要SQL认证可以等安装完毕之后再设定验证模式,如果在脚本里面设定SQL验证的话,里面会记录有sa账户密码。如果脚本丢失,大量的机器都是用这个脚本安装的,那个就不用解释了,悲剧…… 再下面的一段就是纯粹的服务设定了,SQL Server的很多功能都是以服务的方式运行的,所以就要给他们赋予相应的启动方式(自动、禁止等)。还有就是对服务给予适当的启动账户(系统账户、本地服务、域权限等)。权限给低了许多权限不够,权限给高了会影响安全性,这个也要综合考虑。 最后就是/SQLSYSADMINACCOUNTS="hanxu",给SQL的sysadmin添加一个账户用于登陆。 关于其他优化: 1.SQL Server的安装盘里面包含了X、X、AI这3个版本,如果只用到其中的一个构架的版本,可以把存放其他版本安装文件的个文件夹给直接删了,然后再打包,这样能精简安装包。 2.我这个实力脚本式对应SQL Server 的,如果是之前的版本可能需要打补丁。可以把补丁文件也整合进脚本,然后走脚本自动安装。我实验过一个脚本安装了SQL Server 和它的SP1补丁,这个很方便。 3.SQL Server不同版本之间的脚本在参数上有小的差异,这里推荐用虚拟机快照保存最初状态,然后慢慢反复尝试。如果有错误,脚本会在命令行里给出错误参数。详细的参数查询可以使用/help命令或者去MSDN查询。 用了自动化脚本还是很爽的,原来手动安装半小时的活,现在点一下鼠标就行了。甚至可以给脚本加的自动重启的命令,点下鼠标,半小时之后来直接就能用了。话说为了写这个脚本,我用虚拟机实验了也就几十、二十次的样子,通宵了一个晚上,不过对于我这种经常大量安装任务的人来说,可以说是一次投资终身受用。这里分享给大家,希望对大家有所帮助。
推荐整理分享利用脚本自动安装SQLServer的实现步骤分析(自动软件脚本),希望有所帮助,仅作参考,欢迎阅读内容。
文章相关热门搜索词:自动脚本违法吗,利用脚本自动安装程序,自动设置脚本,自动软件脚本,自动安装脚本,利用脚本自动安装app,自动安装脚本,利用脚本自动安装app,内容如对您有帮助,希望把文章链接给更多的朋友!
SQLServer更改sa用户名的方法 首先,在企业管理器的查询分析器中运行以下代码(注意,进入查询分析器的用户名的角色要为Systemadministrator,而且是各个数据库的dbowner):sp_configure'a
sqlserver中更改数据库所属为dbo的方法 sp_configure'allowupdates','1'goreconfigurewithoverridegoupdatesysobjectssetuid=1whereuid1gosp_configure'allowupdates','0'goreconfigurewithoverride在查询分析器里面执行一次就行,执行
sqlserver 临时表的用法 用法:用于复杂查询时可以用临时表来暂存相关记录,能够提高效率、提高程序的可读性,类似于游标中的my_cursordeclaremy_cursorcursorscrollforselect字段fromtab