2016-10-03 50 views
0

我正在創建一個在遠程服務器上安裝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

回答

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 

這是一個在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> 
0

您要尋找的是的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