《PowerShell V3——SQL Server 2012数据库自动化运维权威指南》——第1章 开始使用SQL Server和PowerShell 1.1 简介

本文涉及的产品
云数据库 RDS SQL Server,基础系列 2核4GB
RDS SQL Server Serverless,2-4RCU 50GB 3个月
推荐场景:
简介:

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

第1章 开始使用SQL Server和PowerShell

PowerShell V3——SQL Server 2012数据库自动化运维权威指南
1.1 简介
PowerShell是一款拥有Shell和脚本能力的可管理工具,可以用来调用Windows管理规范(Windows Management Instrumentation,WMI)、COM组件和.NET库。PowerShell在一代一代的微软产品中变得更加杰出。在大量的、新的、即将发布的微软产品中,对于它的支持是捆绑式的,并有所加强。Windows Server、Exchange、ActiveDirectory、SharePoint,甚至SQL Server,所有这些都添加了PowerShell支持和cmdlets。甚至一些供应商如VMWare、Citrix、Cisco和Quest提供了允许他们的产品被PowerShell访问的方法。

是什么使得PowerShell发威?每个系统管理员可能都知道通过脚本集成各种系统的痛苦。曾经用到的解决方案是集成各种脚本,包括VBScript、一些批处理文件,或者C#代码、Perl脚本。系统管理员要么捆绑不同的语言来工作,要么因为复杂的代码而束手无策。

这就是PowerShell的来由。PowerShell最重要的一点是,它简化了自动化和在不同微软子系统之间的集成。因为大多数产品都支持PowerShell,让一个系统与另一个系统沟通只是一件探索在脚本中添加哪些cmdlets、功能或模块的事情。即便产品现在还不支持PowerShell,但它很有可能已经有了.NET或COM组件的支持,能够轻松使用PowerShell。

值得注意的PowerShell V3属性
在最新版本中,值得注意的属性如下所示。

工作流(Workflows):PowerShell V3包括Windows PowerShell Workflow(PSWF),在MSDN中有描述(http://msdn.microsoft.com/en-us/library/jj134242.aspx):
帮助自动化分发、业务流程、完成多机任务、解放用户和管理员使他们专注于高级别任务。
PSWF运用Windows Workflow Foundation 4.0作为声明框架,但使用类似PowerShell语法和结构。
稳健的会话(Robust sessions):PowerShell V3支持更加稳健的会话。会话能在网络中断的过程中被保留。这些会话保留打开状态直到超时。
调度作业(Scheduled jobs):对于调度作业有一个增强的支持。在PSScheduledJob模块中有新的cmdlets,允许你创建、激活和管理调度作业。
模块自动加载(Module AutoLoading):如果你使用的cmdlet所属于的模块还没有被加载,将触发PowerShell搜索PSModulePath,加载第一个包含该cmdlet的模块。这些我们很容易测试。

#check current modules in session
Get-Module
#use cmdlet from CimCmdlets module, which
#is not loaded yet
Get-CimInstance win32_bios 
#note new module loaded CimCmdlets
Get-Module 
#use cmdlet from SQLPS module, which
#is not loaded yet
Invoke-Sqlcmd -Query "SELECT GETDATE()" -ServerInstance "KERRIGAN"
#note new modules loaded SQLPS and SQLASCmdlets 
Get-Module
AI 代码解读

Web服务支持(Web service support):PowerShell V3介绍了Invoke-WebRequest cmdlet,它发送HTTP或者HTTPS请求到Web服务,返回基于对象的内容,能够在PowerShell中被容易的操作。你可以考虑用PowerShell下载完整的站点(看看Lee Holmes关于此项服务的文章:http://www.leeholmes.com/blog/2012/03/31/how-to- download-an-entire-wordpress-blog)。

简化语法(Simplified language syntax):书写Where-Object和Foreach-Object变得更加整洁。提高包括默认参数值和简化语法。
在V1和V2中必须用大括号和$_。

Get-Service | Where-Object { $_.Status –eq' Running' }
AI 代码解读

现在能在V3中书写为:

Get-Service | Where-Object Status –eq' Running'
AI 代码解读

增强集成脚本环境(Improved Integrated Scripting Enviroment(ISE)):新的ISE智能感知,侧边栏可搜索命令、参数表单和动态语法检查。
image

相关实践学习
使用SQL语句管理索引
本次实验主要介绍如何在RDS-SQLServer数据库中,使用SQL语句管理索引。
SQL Server on Linux入门教程
SQL Server数据库一直只提供Windows下的版本。2016年微软宣布推出可运行在Linux系统下的SQL Server数据库,该版本目前还是早期预览版本。本课程主要介绍SQLServer On Linux的基本知识。 相关的阿里云产品:云数据库RDS SQL Server版 RDS SQL Server不仅拥有高可用架构和任意时间点的数据恢复功能,强力支撑各种企业应用,同时也包含了微软的License费用,减少额外支出。 了解产品详情: https://www.aliyun.com/product/rds/sqlserver
相关文章
数据库数据恢复——sql server数据库被加密的数据恢复案例
SQL server数据库数据故障: SQL server数据库被加密,无法使用。 数据库MDF、LDF、log日志文件名字被篡改。 数据库备份被加密,文件名字被篡改。
大数据新视界--大数据大厂之MySQL数据库课程设计:MySQL 数据库 SQL 语句调优方法详解(2-1)
本文深入介绍 MySQL 数据库 SQL 语句调优方法。涵盖分析查询执行计划,如使用 EXPLAIN 命令及理解关键指标;优化查询语句结构,包括避免子查询、减少函数使用、合理用索引列及避免 “OR”。还介绍了索引类型知识,如 B 树索引、哈希索引等。结合与 MySQL 数据库课程设计相关文章,强调 SQL 语句调优重要性。为提升数据库性能提供实用方法,适合数据库管理员和开发人员。
大数据新视界--大数据大厂之MySQL 数据库课程设计:MySQL 数据库 SQL 语句调优的进阶策略与实际案例(2-2)
本文延续前篇,深入探讨 MySQL 数据库 SQL 语句调优进阶策略。包括优化索引使用,介绍多种索引类型及避免索引失效等;调整数据库参数,如缓冲池、连接数和日志参数;还有分区表、垂直拆分等其他优化方法。通过实际案例分析展示调优效果。回顾与数据库课程设计相关文章,强调全面认识 MySQL 数据库重要性。为读者提供综合调优指导,确保数据库高效运行。
数据库编程:在PHP环境下使用SQL Server的方法。
看看你吧,就像一个调皮的小丑鱼在一片广阔的数据库海洋中游弋,一路上吞下大小数据如同海中的珍珠。不管有多少难关,只要记住这个流程,剩下的就只是探索未知的乐趣,沉浸在这个充满挑战的数据库海洋中。
47 16
如何优化SQL查询以提高数据库性能?
这篇文章以生动的比喻介绍了优化SQL查询的重要性及方法。它首先将未优化的SQL查询比作在自助餐厅贪多嚼不烂的行为,强调了只获取必要数据的必要性。接着,文章详细讲解了四种优化策略:**精简选择**(避免使用`SELECT *`)、**专业筛选**(利用`WHERE`缩小范围)、**高效联接**(索引和限制数据量)以及**使用索引**(加速搜索)。此外,还探讨了如何避免N+1查询问题、使用分页限制结果、理解执行计划以及定期维护数据库健康。通过这些技巧,可以显著提升数据库性能,让查询更高效流畅。
JetBrains DataGrip 2025.1 发布 - 数据库和 SQL 跨平台 IDE
JetBrains DataGrip 2025.1 (macOS, Linux, Windows) - 数据库和 SQL 跨平台 IDE
24 0
数据库数据恢复—SQL Server报错“错误 823”的数据恢复案例
SQL Server数据库附加数据库过程中比较常见的报错是“错误 823”,附加数据库失败。 如果数据库有备份则只需还原备份即可。但是如果没有备份,备份时间太久,或者其他原因导致备份不可用,那么就需要通过专业手段对数据库进行数据恢复。
,自动化运维成为现代IT基础设施的关键部分。Puppet是一款强大的自动化运维工具
【10月更文挑战第7天】随着云计算和容器化技术的发展,自动化运维成为现代IT基础设施的关键部分。Puppet是一款强大的自动化运维工具,通过定义资源状态和关系,确保系统始终处于期望配置状态。本文介绍Puppet的基本概念、安装配置及使用示例,帮助读者快速掌握Puppet,实现高效自动化运维。
135 4
HTTPS 证书自动化运维:https证书管理系统- 自动化监控
本文介绍如何设置和查看域名或证书监控。步骤1:根据证书状态选择新增域名或证书监控,线上部署推荐域名监控,未部署选择证书监控。步骤2:查询监控记录详情。步骤3:在详情页查看每日定时检测结果或手动测试。
HTTPS 证书自动化运维:https证书管理系统- 自动化监控
HTTPS 证书自动化运维:https证书管理系统-自动化部署
本指南介绍如何部署Linux服务器节点。首先复制生成的Linux脚本命令,然后将其粘贴到目标服务器上运行。接着刷新页面查看节点记录,并点击“配置证书”选择证书以自动部署。最后,节点部署完成,后续将自动调度,无需人工干预。
HTTPS 证书自动化运维:https证书管理系统-自动化部署

热门文章

最新文章