自行安装PowerShell是否有足够的function来pipe理Windows域环境和/或SQL Server?
如果不是什么好,免费或付费的,第三方附加软件?
为了回答这个问题,您需要缩小图片大小,问一下pipe理Windows和SQL Server的意义。 例如,您的环境中有多less这些其他的东西:
所有这些东西都有自己的pipe理机制,而且由于PowerShell还比较新,所以并不是所有的服务都支持PowerShell。 目前,您可能需要跳出PowerShell才能pipe理这些事情。
另一方面,在所有这些Windows工具中,没有其他语言可以更好地工作。
当你说“pipe理服务器的function”时,这还不是来自Windows语言。 在* nix的世界里,你可以呆在一个脚本环境中,但是Windows世界还不是那么完美。
你的第一个问题的答案是响亮的“是”。
为了pipe理现有的Windows域,“vanilla”PowerShell(没有额外的pipe理单元)为WMI,ADSI,COM和.NET提供了开箱即用的支持。
pipe理远程机器是通过WMI(或COM / .NET取决于用例)来处理的。
pipe理SQL Server可以使用SMO库(请参阅SQL Server PowerShell扩展的想法)。 您可以通过ADO.NET访问数据。
回答你的问题的第二部分,关于什么是好的第三方插件,真的取决于你需要做什么。 正如约翰·库克所说,PowerShell社区扩展是一个很好的普遍的补充。 还有很多很多 PowerShellCommunity.Org对第三方产品有很多很好的参考,Codeplex拥有大量的开源PowerShell项目。
更多微软产品正在添加PowerShell支持(如SQL Server 2008,Exchange,Active Directory等)。
V2(即将接近)包含一些很棒的远程和后台工作能力。
Powershell不附带SQLpipe理工具,尽pipe您可以继续使用诸如osql或isql之类的东西。 我知道有Powershell插件,让你“安装”一个SQL服务器,并像它是一个文件系统(很像registry的东西内置)导航它。
PowerShell社区扩展( PSCX )是免费和方便的。
本身和你自己,PowerShell是不够的。
但PowerShell并不孤单,你也不是。 还有一些扩展,比如上面提到的John D. Cook,以及一个充满活力的社区,分享他们所了解的知识。
它被轻松地和不断地扩展,并且允许你访问必要的COM和.NET对象来pipe理你喜欢的任何东西。
总是有Perl。 :)对于SQL Server DBA,请参阅Linchi Shea的书 。
我真的发现Quest ActiveRolespipe理单元对使用和pipe理Active Directory非常有用。 你可以在这里获得pipe理单元,但是我认为这篇博文在解释它是什么,如何设置以及如何使用它方面做得非常出色。
作为一个比较大的DBA,我的意见是肯定的。 我们已经使用PowerShell 1.0构build了完整的MS SQL Server监视器和维护框架。 该系统可以自动进行日常的容量监控以及自动备份索引维护等。