spu*_*der 3 sql-server chef-infra chocolatey
我正在尝试自动安装SQL Server 2016 Express.
我有一个厨师食谱,使用chocolatey软件包安装SQL Server Express.
与厨师资源相同的命令
chocolatey_package 'sql-server-express' do
action :install
options '--cachelocation c:\temp\choco'
end
Run Code Online (Sandbox Code Playgroud)
等效的PowerShell命令
choco install sql-server-express --cachelocation c:\temp\choco
Run Code Online (Sandbox Code Playgroud)
如果我使用安装向导正常安装SQL Server Express,我可以验证和创建/修改数据库没问题.
如果我使用chocolatey/chef安装SQL Server Express,我将无法创建或修改数据库.
尝试创建新数据库时出错
数据库'master'中的CREATE DATABASE权限被拒绝
尝试修改现有数据库时出错
服务器主体"Foo\Bar"无法在当前安全上下文中访问数据库"foobar"
我已经尝试以"sa"用户身份登录.混合身份验证未启用,我无法启用它.
如何让SQL Server Express用户的巧克力安装与普通安装相同?
好几天后,我发现了这个问题.作为本地管理用户运行chocolatey,而不是SYSTEM.
如果由于WinRM协议的限制而在WinRM上执行命令,则不会安装chocolatey软件包.
常见的工作是在计划任务中运行厨师/巧克力.
不幸的是,计划任务以SYSTEM用户身份运行.结果是MSSQL只允许SYSTEM用户运行管理命令.
解决方案是在计划任务内运行巧克力作为本地系统帐户(而不是SYSTEM).或者使用RDP登录系统并直接运行chocolatey命令(而不是通过winrm).
如何将厨师测试厨房作为(非SYSTEM)提升用户运行的示例
transport:
name: winrm
elevated: true
elevated_username: vagrant
elevated_password: vagrant
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
567 次 |
| 最近记录: |