欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

《PowerShell V3——SQL Server 2012数据库自动化运维权威指南》——2.5 列出SQL Server配置设置...

程序员文章站 2024-03-15 18:03:36
...

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

2.5 列出SQL Server配置设置

本方案讲述如何使用PowerShell列出SQL Server可配置和不可配置的实例设置。

2.5.1 如何做…
1.通过“Start | Accessories | Windows PowerShell | Windows PowerShell ISE”打开PowerShell ISE。

2.导入SQLPS模块,创建一个新的SMO服务器对象。

#import SQL Server module
Import-Module SQLPS –DisableNameChecking
#replace this with your instance name
$instanceName = "KERRIGAN"
$server = New-Object -TypeName Microsoft.SqlServer.Management.Smo.Server
-ArgumentList $instanceName

为了浏览在SMO服务器下的成员和方法,在PowerShell V3中使用如下代码片段。

#Explore: get all properties available for a server object
#http://msdn.microsoft.com/en-us/library/ms212724.aspx
$server | Get-Member | Where MemberType -eq "Property"

在PowerShell V2中,你需要稍微修改下语法。

$server | Get-Member | Where {$_.MemberType -eq "Property"}
#The Information class lists nonconfigrable instance settings, 
#like BuildNumber, OSVersion, ProductLevel etc
#Also includes settings specified during install
$server.Information.Properties | 
Select Name, Value | 
Format-Table –AutoSize

《PowerShell V3——SQL Server 2012数据库自动化运维权威指南》——2.5 列出SQL Server配置设置...

3.接下来,让我们看看Settings类。

#The Settings lists some instance level configurable settings, 
#like LoginMode, BackupDirectory etc
$server.Settings.Properties | 
Select Name, Value | 
Format-Table –AutoSize

《PowerShell V3——SQL Server 2012数据库自动化运维权威指南》——2.5 列出SQL Server配置设置...

4.UserOption类列出用户特定选项。

#The UserOptions include options that can be set for user 
#connections, for example
#AnsiPadding, AnsiNulls, NoCount, QuotedIdentifier
$server.UserOptions.Properties | 
Select Name, Value | 
Format-Table –AutoSize

《PowerShell V3——SQL Server 2012数据库自动化运维权威指南》——2.5 列出SQL Server配置设置...

5.Configuration类包含实例的特定设置,类似于你运行sp_configure所看到的。

#The Configuration class contains instance specific settings, 
#like AgentXPs, clr enabled, xp_cmdshell
#You will normally see this when you run 
#the stored procedure sp_configure
$server.Configuration.Properties | 
Select DisplayName, Description, RunValue, ConfigValue | 
Format-Table –AutoSize

《PowerShell V3——SQL Server 2012数据库自动化运维权威指南》——2.5 列出SQL Server配置设置...

2.5.2 如何实现…

大多数SQL Server设置和配置都可以通过SMO或WMI来展示,可以通过编程方式来获得这些值。

访问配置详细信息的核心是SMO服务器类。这个类展示了SQL Server实例的属性,一些是可配置的,而一些不可配置。

为了创建SMO服务器类,你需要知道你的实例名,并传递给以下变量。

#replace this with your instance name
$instanceName = "KERRIGAN"
$server = New-Object -TypeName Microsoft.SqlServer.Management.Smo.
Server -ArgumentList $instanceName

以下是四个主要的属性,用于存储在本方案中所看到的设置或配置。
《PowerShell V3——SQL Server 2012数据库自动化运维权威指南》——2.5 列出SQL Server配置设置...

2.5.3 更多…

查看MSDN关于SMO类的完整文档。

http://msdn.microsoft.com/en-us/library/ms212724.aspx