gpt4 book ai didi

sql-server - SQL Server 在安装 witch chocolatey 时无法授权用户(通过 chef)

转载 作者:行者123 更新时间:2023-12-03 09:33:19 24 4
gpt4 key购买 nike

我正在尝试自动安装 SQL Server 2016 Express。

我有一本使用巧克力包安装 SQL Server Express 的 Chef Recipe 。

与 Chef 资源相同的命令

chocolatey_package 'sql-server-express' do
action :install
options '--cachelocation c:\temp\choco'
end

等效的 PowerShell 命令

choco install sql-server-express --cachelocation c:\temp\choco

如果我使用安装向导正常安装 SQL Server Express,我可以毫无问题地验证和创建/修改数据库。

如果我使用 chocolatey/chef 安装 SQL Server Express,我将无法创建或修改数据库。

尝试创建新数据库时的错误

CREATE DATABASE permission denied in database 'master'

enter image description here

尝试修改现有数据库时的错误

The server principal "Foo\Bar" is not able to access the database "foobar" under the current security context

enter image description here

我试过以“sa”用户身份登录。混合身份验证未启用,我无法启用它。

如何让 SQL Server Express 用户的巧克力安装与正常安装相同?

最佳答案

很多天后我发现了问题。 以本地管理用户身份运行 chocolatey,而不是 SYSTEM

为什么:

由于 WinRM 协议(protocol)的限制,如果通过 WinRM 执行命令,将不会安装巧克力包。

常见的解决方法是在计划任务中运行 chef/chocolatey。

不幸的是,计划任务以 SYSTEM 用户身份运行。结果是 MSSQL 将只允许 SYSTEM 用户运行管理命令。

解决方案是以本地系统帐户(不是 SYSTEM)在计划任务中运行 chocolatey。或者使用 RDP 登录系统并直接运行 chocolatey 命令(而不是通过 winrm)。

如何以(非 SYSTEM)提升用户身份运行 Chef 测试厨房的示例

transport:
name: winrm
elevated: true
elevated_username: vagrant
elevated_password: vagrant

关于sql-server - SQL Server 在安装 witch chocolatey 时无法授权用户(通过 chef),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46553807/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com