我希望能够通过T-SQL或Powershell在新的或现有的Windows Server服务器上打开IFI http://bit.ly/1dK32Dc 。 不想通过“本地安全>本地策略>用户权限分配>执行卷维护任务>添加用户”路由 – 需要通过脚本部署新机器,无需手动交互。 假定SQL Server服务帐户不更改。
对于新安装,当我select帐户时,我可以运行下面的Powershell脚本,并解决了这个问题:
$sqlaccount = "domain\account" # https://technet.microsoft.com/en-gb/library/bb490997.aspx secedit /export /cfg C:\secexport.txt /areas USER_RIGHTS $line = Get-Content C:\secexport.txt | Select-String 'SeManageVolumePrivilege' (Get-Content C:\secexport.txt).Replace($line,"$line,$sqlaccount") | Out-File C:\secimport.txt secedit /configure /db secedit.sdb /cfg C:\secimport.txt /overwrite /areas USER_RIGHTS
但是,对于现有的SQL安装,无法想象查询已configuration的SQL Server服务帐户的方法 – 并将其提供给此脚本。 考虑到WS 2012 R2的解决scheme,但是在WS 2003 R2上也可以使用的解决scheme是最好的(如果我没有弄错的话,支持Powershell 2)。
(Get-WmiObject win32_service | where { $_.displayname -eq "SQL Server"} ).startname
用您的SQL服务器服务的显示名replace名称