《PowerShell V3——SQL Server 2012数据库自动化运维权威指南》——1.4 浏览SQL Server PowerShell层次结构

本文涉及的产品
云数据库 RDS SQL Server,基础系列 2核4GB
简介:

本节书摘来自异步社区出版社《PowerShell V3—SQL Server 2012数据库自动化运维权威指南》一书中的第1章,第1.4节,作者:【加拿大】Donabel Santos,更多章节内容可以访问云栖社区“异步社区”公众号查看。

1.4 浏览SQL Server PowerShell层次结构

在SQL Server 2012中,原始的迷你Shell已经被废弃,SQLPS现在作为模块。从SSMS进入到PowerShell,现在是进入了一个Windows PowerShell会话,导入SQLPS模块,设置当前的安全上下文为PowerShell会话进入的源条目。DBA和开发可以从这里浏览对象架构。

1.4.1 准备

登录SSMS

1.4.2 如何做…

在这个方案中,我们将从SSMS进入PowerShell会话来浏览SQL Server PowerShell层级结构。

1.右击实例节点。

2.单击“Start PowerShell”。将进入PowerShell会话,导入SQLPS模块。窗口看起来类似一个命令提示符,有一个当前窗口的SQL Server对象源的提示。

image

注意窗口的开始路径。

3.输入dir。列出当前实例下可访问的所有对象的列表,对于我来说,默认实例是WIN- LLPKR5BVV6S。注意dir是cmdlet Get-ChildItem的别名。

image

类似于在SSMS的“Object Explorer”中,在实例节点下所看到的对象。

image

4.当PowerShell窗口打开的时候,浏览SQL Server PSDrive或者SQL Server数据存储,PowerShell视为条目序列。输入cd 。到当前驱动器的根目录,就是SQL Server PSDrive的路径将会改变。

5.输入dir。列出所有SQL Server PSDrive根目录下可访问的条目,将会看到类似以下的截屏。
image

6.关闭窗口。

7.返回SSMS,右击一个用户数据库。

8.单击“Start PowerShell”。注意,这将会进入另一个PowerShell会话,路径将指向你右击的数据库。

image

注意,这个窗口的开始路径不同于第二步中第一次进入PowerShell的路径。如果你从当前位置输入dir,将会看到在AdventureWorks 2008 R2数据库下面的所有条目。

如果你展开AdventureWorks2008R2数据库节点,你可以看到在SSMS的“Object Explorer”中列举的一些条目。
image

1.4.3 如何实现…

当PowerShell从SSMS进入时,会创建一个上下文敏感的PowerShell,它将自动导入SQLPS模块。提示符很明显显示了“Start PowerShell”菜单被单击的源对象的路径。

image

SQL Server 2008/2008 R2作为SQLPS迷你Shell,也作为SQLPS工具集。也可以通过从SSMS的“Object Explorer”右击一个对象,然后单击“Start PowerShell”进行启动。这个迷你Shell被设计为预加载了SQL Server扩展的封闭Shell。这个Shell意味着只能用于SQL Server,被证明是相当有限的,因为DBA和开发常常需要通过PowerShell导入插件和模块来集成SQL Server和其他系统。另一个方法是进入一个成熟的PowerShell会话,这依赖于你的PowerShell版本要么导入插件,要么导入SQLPS模块。

在SQL Server 2012中,原始的迷你Shell已经被废弃了。当你从SQL Server 2012的SSMS进入一个PowerShell会话时,它进入了一个成熟的PowerShell会话,默认导入更新的SQLPS模块。

SQL Server作为一个PowerShell驱动设备(PSDrive),可以像切换目录和文件一样切换对象。因此,提供者支持熟悉的切换目录命令,如dir或者ls。注意,这些熟悉的命令常常只是真实的cmdlet的别名,这里是Get-ChildItem。

通过SSMS进入PowerShell时,你能立刻开始浏览SQL Server PowerShell的层次结构。

相关文章
|
7月前
|
人工智能 运维 关系型数据库
|
3月前
|
SQL Web App开发 安全
SQL Server 2025 年 8 月更新 - 修复 CVE-2025-49759 SQL Server 特权提升漏洞
SQL Server 2025 年 8 月更新 - 修复 CVE-2025-49759 SQL Server 特权提升漏洞
317 2
SQL Server 2025 年 8 月更新 - 修复 CVE-2025-49759 SQL Server 特权提升漏洞
|
2月前
|
SQL Web App开发 安全
SQL Server 2025 年 9 月更新 - 修复 CVE-2025-47997 SQL Server 信息泄露漏洞
SQL Server 2025 年 9 月更新 - 修复 CVE-2025-47997 SQL Server 信息泄露漏洞
124 0
SQL Server 2025 年 9 月更新 - 修复 CVE-2025-47997 SQL Server 信息泄露漏洞
|
3月前
|
SQL 容灾 安全
云时代SQL Server的终极答案:阿里云 RDS SQL Server如何用异地容灾重构系统可靠性
在数字化转型的浪潮中,数据库的高可用性已成为系统稳定性的生命线。作为经历过多次生产事故的资深开发者,肯定深知传统自建SQL Server架构的脆弱性——直到遇见阿里云 RDS SQL Server,其革命性的异地容灾架构彻底改写了游戏规则。
|
4月前
|
SQL Web App开发 安全
SQL Server 2025年7月更新 - 修复 CVE-2025-49718 Microsoft SQL Server 信息泄露漏洞
SQL Server 2025年7月更新 - 修复 CVE-2025-49718 Microsoft SQL Server 信息泄露漏洞
374 0
SQL Server 2025年7月更新 - 修复 CVE-2025-49718 Microsoft SQL Server 信息泄露漏洞
|
10月前
|
关系型数据库 MySQL 数据库连接
数据库连接工具连接mysql提示:“Host ‘172.23.0.1‘ is not allowed to connect to this MySQL server“
docker-compose部署mysql8服务后,连接时提示不允许连接问题解决
447 69
|
关系型数据库 MySQL 网络安全
5-10Can't connect to MySQL server on 'sh-cynosl-grp-fcs50xoa.sql.tencentcdb.com' (110)")
5-10Can't connect to MySQL server on 'sh-cynosl-grp-fcs50xoa.sql.tencentcdb.com' (110)")
|
SQL 关系型数据库 MySQL
【超全整理】SQL日期与时间函数大汇总会:MySQL与SQL Server双轨对比教学,助你轻松搞定时间数据处理难题!
【8月更文挑战第31天】本文介绍了在不同SQL数据库系统(如MySQL、SQL Server、Oracle)中常用的日期与时间函数,包括DATE、NOW()、EXTRACT()、DATE_ADD()、TIMESTAMPDIFF()及日期格式化等,并提供了具体示例。通过对比这些函数在各系统中的使用方法,帮助开发者更高效地处理日期时间数据,满足多种应用场景需求。
1731 1
|
SQL XML 运维
SQL Server 运维常用sql语句(三)
SQL Server 运维常用sql语句(三)
186 1
|
SQL 数据库
执行 Transact-SQL 语句或批处理时发生了异常。 (Microsoft.SqlServer.ConnectionInfo)之解决方案
执行 Transact-SQL 语句或批处理时发生了异常。 (Microsoft.SqlServer.ConnectionInfo)之解决方案
1437 0
下一篇
oss云网关配置