执行SQL Server PowerShell模块需要什么

问题描述:

我正在创建一个在远程服务器上安装Windows服务的Octopus部署。我正在使用Web部署项目中的模板来设置Web服务和Web应用程序(在其他服务器上)。它有一个额外的步骤,用于部署数据库脚本以更新架构和存储过程等。此步骤是使用SQL Server PowerShell工具(显然)在Web服务器上执行的。执行SQL Server PowerShell模块需要什么

我需要将其纳入我的项目。建立原始项目的人早已离去!我已经设法完成了最后一步,但新服务器上所需的SQL Server PowerShell工具不可用。

数据库脚本步骤正在引发以下错误。

导入模块:指定的模块'C:\ Program Files \ Microsoft SQL Server \ 110 \ Tools \ PowerShell \ Modules \ SQLPS'未加载,因为在任何模块目录中未找到有效的模块文件。
在C:\八达通\工作\ 20160930164655-24 \的.ps1:1个字符:14个

必要的文件夹和文件在Web服务器上存在。它看起来像SQL Server客户端虽然没有安装(通过开始菜单判断,例如我没有看到SQL Server Management Studio)。

程序和功能 Web服务器我看到一堆的SQL服务器的事情上:

  • 微软SQL Server 2012的命令行工具
  • 的Microsoft SQL Server 2012数据层应用程序框架
  • Microsoft SQL Server 2012 Express LocalDB
  • Microsoft SQL Server 2012管理对象
  • Microsoft SQL Server 2012管理EMENT对象(64)
  • 微软SQL Server 2012的本机客户端
  • 的Microsoft SQL Server 2012的Transact-SQL编译器服务
  • 的Microsoft SQL Server 2012的Transact-SQL ScriptDom
  • 的Microsoft SQL Server 2012的Transact-SQL语言服务
  • 的Microsoft SQL Server 2012 TSQL语言服务
  • 的Microsoft SQL Server Comnpact 4.0 SP1 x64的ENU
  • Microsoft SQL Server数据工具 - ENU(11.1.20627.00)
  • Microsoft SQL Server数据工具 - 构建实用程序 - ENU(11.1.20627.00)
  • 的Microsoft SQL Server系统CLR类型
  • 的Microsoft SQL Server系统CLR类型(64)
  • 的Microsoft SQL Server系统CLR类型的SQL Server 2012
  • 的Microsoft SQL Server系统CLR类型的SQL Server 2012(64位)
  • 的Windows PowerShell扩展为SQL Server 2012

我需要提高的IT票得到这个在我的新服务器上设置,但不知道要求什么!什么安装会给我上面的功能?或者什么安装会让我执行该脚本?

SQL Server客户端2012就足够了吗?

注意:我需要安装的服务器是32位。

+0

如果加上'导入模块SQLPS -DisableNameChecking什么;'在脚本的最顶端? – gofr1

+0

import-module“C:\ Program Files \ Microsoft SQL Server \ 110 \ Tools \ PowerShell \ Modules \ SQLPS”-DisableNameChecking 这是脚本的第一行。这就是问题所在 –

+0

在我的评论中尝试一下字符串。 – gofr1

SQLPS自动安装在SQL Server 2012中。旧版本需要从下载Featurpack安装它。

它通常安装的SQL Server 2012的文件夹中:

c:\Program Files\Microsoft SQL Server\110\Tools\PowerShell\Modules\SQLPS 

如果它不是在这条道路可供需要安装:

Microsoft Windows PowerShell Extensions for Microsoft SQL Server 2012 

这是一个在URL availabl:
32 bit:
64 bit:

in Poweshe LL 3,您可以运行命令(不带路径):

 Import-Module Sqlps -DisableNameChecking; 

,如果你使用的路径

调用-SQLCMD类似于命令行工具SQLCMD

它是有效的您可以使用以下命令运行脚本文件:

sqlcmd -S <server> -U <user> -P <password> -i <qry.sql> 

您要寻找的是的Microsoft SQL Server 2012功能包,可在这里:

https://www.microsoft.com/en-us/download/details.aspx?id=29065

如果展开“安装说明”部分,然后半滚动约下来的页面,你会看到的一个组成部分所列是PowerShell扩展,其中包含SQLPS模块。请注意,此组件依赖于共享管理对象成分,而这又取决于CLR类型(也同页)(另在页面上,但至少一个已经安装在服务器上) 。

有可用于SQL Server的其他版本不同的版本:

的SQL Server 2014:https://www.microsoft.com/en-us/download/details.aspx?id=42295

的SQL Server 2016 https://www.microsoft.com/en-us/download/details.aspx?id=52676