DBA可以使用的工具很多,對於SQL Server來說,有查詢分析器、事件探查器、命令列工具等,其中SQL語句是重中之重,但是PowerShell的出現使得DBA又多了一種選擇。
SQL Server 2008 引入了對於 Windows PowerShell 的支援。Windows PowerShell 是一個功能強大的指令碼 shell,管理員和開發人員可以通過它自動執行伺服器管理和應用程式部署。與 Transact-SQL 指令碼相比,Windows PowerShell 語言能夠支援更複雜的邏輯,這使得 SQL Server 管理員能夠產生強大的管理指令碼。Windows PowerShell 指令碼還可用來管理其他 Microsoft 伺服器產品,這為管理員提供一個跨伺服器的通用指令碼語言。
SQL Server 提供了兩個可用來實現以下內容的 Windows PowerShell 嵌入式管理單元:
- 一個 SQL Server 提供者(允許使用類似於檔案系統路徑的簡單導航機制)。您可以產生類似於檔案系統路徑的路徑,在路徑中,磁碟機與 SQL Server 管理物件模型關聯,節點基於物件模型類。然後,可以使用您熟悉的命令(如 cd 和 dir),按照在命令提示字元視窗中定位檔案夾的方式瀏覽路徑。可以使用其他命令(如 ren 或 del)針對路徑中的節點執行操作。
- 一組 cmdlet(它們在 Windows PowerShell 指令碼中用於指定 SQL Server 操作)。SQL Server cmdlet 支援各種操作,如運行包含 Transact-SQL 或 XQuery 語句的 sqlcmd 指令碼。
Codeplex上SQL Server的PowerShell擴充(SQLPSX) 2.3版本最近發布了2.3版本,這個版本使用Wix製作的安裝包,這同時也是一個學習Wix工具包的好例子。關於SQL Server的Powershell命令的使用可以參考園子裡的文章:
http://www.cnblogs.com/brooks-dotnet/archive/2010/10/11/1848282.html
http://www.cnblogs.com/brooks-dotnet/archive/2010/10/13/1850621.html