Sql server Ansible安装SQL Server Express 2016

Sql server Ansible安装SQL Server Express 2016,sql-server,ansible,Sql Server,Ansible,我尝试通过config.ini安装SQL Server Express 2016时遇到问题 序言 远程服务器是Windows 2016 ENG,带有最后一个修补程序 在我的磁盘c:\temp上有SQL设置文件和SQL_conf.ini文件 在这个实例上,我安装了SQL所需的所有模块和服务 如果我在服务器上打开rdp会话并运行命令“c:\temp\SQLEXPRADV\u x64\u ENU\SETUP.EXE /configurationfile=c:\temp\sql\u conf.ini“

我尝试通过config.ini安装SQL Server Express 2016时遇到问题

序言

  • 远程服务器是Windows 2016 ENG,带有最后一个修补程序
  • 在我的磁盘c:\temp上有SQL设置文件和SQL_conf.ini文件
  • 在这个实例上,我安装了SQL所需的所有模块和服务
  • 如果我在服务器上打开rdp会话并运行命令“c:\temp\SQLEXPRADV\u x64\u ENU\SETUP.EXE /configurationfile=c:\temp\sql\u conf.ini“它可以与任何 问题
  • Ansible用于连接的用户名为“Ansible”,位于Administrators组中
剧本是:

- name: 'Installo SQL Server Express 2016'
  win_shell: 'c:\temp\SQLEXPRADV_x64_ENU\SETUP.EXE /configurationfile=c:\temp\sql_conf.ini'
  args:
     chdir: 'c:\temp'
结果是: 生成XML文档时出错。错误结果:-2068774911

我尝试用模块win\u命令win\u psexec替换win\u shell,但没有任何更改。 我还尝试了指令been_方法:runas,但没有任何变化

经过多次尝试,我发现这种行为: 如果登录,只有一次在远程服务器上,通过带有“ansible”用户的rdp(然后注销),palybook可以正常工作

我已经找到了一个使用win\u dsl模块(而不是sql\u conf.ini文件)的解决方法,但我想了解为什么模块win\u shellwin\u命令win\u psexec不起作用


有人知道吗?

很有趣,但几乎不可能调试。如何“注销”?您刚刚断开了RDP连接,或者您实际注销了用户?从我的笔记本电脑客户端打开一个正常的msrdp会话,使用用户“ansible”登录,然后,当我看到远程屏幕时,断开我的用户会话。Windows已经有远程部署的方法,例如Powershell DSC。描述了如何做到这一点,Ansible展示了如何将两者结合起来。另外,如果您在谷歌上搜索这个特定错误,您会发现它可能是由于没有足够的权限安装而导致的。在这种情况下,安装由运行Ansible playbook的帐户执行。该帐户是否具有所需的权限?您也可以在
C:\Program Files\Microsoft SQL Server\1xx\setup Bootstrap\log\Summary.txt
中检查安装日志