我需要什么来执行SQL Server PowerShell模块

时间:2016-10-03 10:35:53

标签: sql-server powershell octopus-deploy

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

我需要将其纳入我的项目中。建立原始项目的人早已不复存在!我已设法让它一直工作到最后一步,但是新服务器上所需的SQL Server PowerShell工具不可用。

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

  

导入 - 模块:未加载指定的模块“C:\ Program Files \ Microsoft SQL Server \ 110 \ Tools \ PowerShell \ Modules \ SQLPS”,因为在任何模块目录中都找不到有效的模块文件。
  在C:\ Octopus \ Work \ 20160930164655-24 \ .ps1:1 char:14

Web服务器上存在必要的文件夹和文件。看起来好像没有安装SQL Server Client(从开始菜单判断;我没有看到SQL Server Management Studio)。

在Web服务器上的程序和功能中,我看到了一堆SQL Server的东西:

  • Microsoft SQL Server 2012命令行实用程序
  • Microsoft SQL Server 2012数据层应用框架
  • Microsoft SQL Server 2012 Express LocalDB
  • Microsoft SQL Server 2012管理对象
  • Microsoft SQL Server 2012管理对象(x64)
  • Microsoft SQL Server 2012 Native Client
  • 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类型(x64)
  • SQL Server 2012的Microsoft SQL Server系统CLR类型
  • SQL Server 2012的Microsoft SQL Server系统CLR类型(x64)
  • SQL Server 2012的Windows Powershell Extensions

我需要筹集一张IT票,以便在我的新服务器上设置这个,但不知道该要求什么!哪些安装会给我上述功能?或者什么安装允许我执行该脚本?

SQL Server Client 2012会满足要求吗?

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

2 个答案:

答案 0 :(得分:0)

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

可在网址获得:
32 bit:
64 bit:

在Poweshell 3中

你可以运行命令(没有路径):

      Import-Module Sqlps -DisableNameChecking;

如果您使用路径

,它就有效

Invoke-Sqlcmd 类似于命令行工具 sqlcmd

您可以使用以下命令运行脚本文件:

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

答案 1 :(得分:0)

您所寻求的是 Microsoft SQL Server 2012功能包,可在此处获取:

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

如果您展开&#34;安装说明&#34;在页面中间向下滚动,您会看到其中列出的其中一个组件是 PowerShell Extensions ,其中包含SQLPS模块。请注意,此组件取决于共享管理对象组件(也在同一页面上),而该组件又取决于 CLR类型(也在页面上,但至少< em> 已经在您的服务器上安装了一个。)

其他版本的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