SQL Server 2008是第一个支持PowerShell的SQL Server版本,但是它的功能还不完善。在SQL Server 2012中,微软公司已经构建了非常稳定的SQL Server,增加了对该产品所有组件支持,包括分析服务和集成服务,以及核心数据库引擎。对PowerShell的支持可能大部分DBA都不熟悉,本文就将对其进行详细的介绍。 首先,我们要明白只有一个shell;尽管微软产品团队热衷于给开始菜单中创建专门针对PowerShell产品的控制台图标,但是它们仍然是相同的shell。
那些产品的每个图标都只是PowerShell插件,在shell启动时应用,使你可以更快地启……
我们一直都在努力坚持原创.......请不要一声不吭,就悄悄拿走。
我原创,你原创,我们的内容世界才会更加精彩!
【所有原创内容版权均属TechTarget,欢迎大家转发分享。但未经授权,严禁任何媒体(平面媒体、网络媒体、自媒体等)以及微信公众号复制、转载、摘编或以其他方式进行使用。】
微信公众号
TechTarget
官方微博
TechTarget中国
SQL Server 2008是第一个支持PowerShell的SQL Server版本,但是它的功能还不完善。在SQL Server 2012中,微软公司已经构建了非常稳定的SQL Server,增加了对该产品所有组件支持,包括分析服务和集成服务,以及核心数据库引擎。对PowerShell的支持可能大部分DBA都不熟悉,本文就将对其进行详细的介绍。
首先,我们要明白只有一个shell;尽管微软产品团队热衷于给开始菜单中创建专门针对PowerShell产品的控制台图标,但是它们仍然是相同的shell。那些产品的每个图标都只是PowerShell插件,在shell启动时应用,使你可以更快地启动和运行。DBA仍然可以使用任何shell实例中的“Add-PSSnapin”和“导入模块”来独立地加载产品的扩展插件。在某些情况下,那些专用产品图标可能会运行整个脚本,如果你想自己加载产品插件,你也应该运行这些脚本。
其次,了解SQL Server使用混合方法来管理。当该产品的扩展插件添加命令(cmdlets)给PowerShell时,SQL Server PowerShell的许多功能以PSProviders的形式出现。本质上,PSProvider使得SQL Server看起来更像是一个大磁盘驱动器,像分析服务和数据库引起这些各种组件都像“文件夹”一样。配置设定以 “文件”形式展现,你需要使用专门的PowerShell命令集(比如:Set-ItemProperty 和 Get-ItemProperty)来操纵这些设定。在PowerShell中使用HKLM或者HKCU:驱动操作注册表是非常简单的事。为什么SQL Server团队不只提供cmdlets来实现所有功能呢?肯定有一些易于上手的因素考虑,但是SQL Server的动态特性使得它还存在有一定挑战。这个“大驱动器”可以应用到各种SQL Server配置和安装场景,而cmdlets的定位是更静态的场景。IIS团队做了相同的决策,提供了一系列cmdlets命令,并且依赖于PSProvider的动态适应性。在加载SQL Server扩展插件到shell之后,运行“Get-PSDrive”来查看你的SQL Server驱动器;换成使用传统的CD命令,然后开始体验吧。
SQL Server确实有几个独特的约定。例如,它不会使用标准“`”(反勾号)字符作为转义字符来处理服务器和对象名称中的非法字符。相反,SQL Server团队选择使用了URL编码,这样空格就会变成“%20”。还有几个命令行编码解码功能,这样你就不需要记住无用字符的十六进制值了。
要记住的最重要的事是什么呢?学会寻求帮助。社区网站PowerShell.com提供了SQL Server Q&A 专栏论坛;也有一些像StackOverflow.com和ServerFault.com这类网站,你可以在这些网站上了解到你的同行们遇到的棘手问题,从而获得帮助。遇到问题不要成天闷头研究,把问题简洁地妥善措辞贴出来,看是否有其他人可以帮助你解决。
总之,不要忽视了PowerShell。当然,用Transact-SQL能做很多事,但是PowerShell是微软的发展方向,而且SQL Server团队已经把它相当广泛地集成到了产品中。DBA需要认真学习PowerShell,这对你未来的发展是有益的。
翻译
相关推荐
-
OpenWorld18大会:Ellison宣布数据库的搜寻和破坏任务
在旧金山举行的甲骨文OpenWorld 2018大会中,甲骨文首席技术官(CTO)兼创始人Larry Elli […]
-
云端SQL Server高可用性最佳做法
与内部部署相比,在云端运行SQL Server可为数据库软件用户提供更多的灵活性和可扩展性,也可能更省钱。但云 […]
-
ObjectRocket着力发展Azure MongoDB服务
MongoDB吸引了微软公司的注意力,微软公司计划针对运行于该公司2017年发布的Azure Cosmos D […]
-
绘制数据关系图的利器:SQL Server 图像数据库工具
SQL Server 2017新增了图形数据库功能,你可以使用图结构来表示不同数据元素之间的关系。