Compartilhar via


Configurando o SQL Server no SMO

Aplica-se a: SQL Server Banco de Dados SQL do Azure Instância Gerenciada de SQL do Azure Azure Synapse Analytics Banco de Dados SQL no Microsoft Fabric

No SMO, o Information objeto, o Settings objeto, o UserOptions objeto e o Configuration objeto contêm configurações e informações para a instância do Microsoft SQL Server.

O SQL Server tem várias propriedades que descrevem o comportamento da instância instalada. As propriedades descrevem opções de inicialização, os padrões do servidor, arquivos e diretórios, informações sobre o sistema e o processador, produtos e versões, informações sobre conexões, opções de memória, seleções de linguagem e ordenação, e o modo de autenticação.

Configuração do SQL Server

As Information propriedades do objeto contêm informações sobre a instância do SQL Server, como processador e plataforma.

As Settings propriedades do objeto contêm informações sobre a instância do SQL Server. O diretório e o arquivo de banco de dados padrão podem ser modificados, além do Perfil de Email e da Conta de Servidor. Essas propriedades serão mantidas enquanto durar a conexão.

As propriedades do objeto UserOptions contêm informações sobre o comportamento das conexões atuais em relação a aritmética, padrões ANSI e transações.

Também há um conjunto de opções de configuração que é representado pelo objeto Configuration. Ele contém um conjunto de propriedades que representam as opções que podem ser modificadas pelo procedimento armazenado sp_configure . Opções como Aumento de Prioridade, Intervalo de Recuperação e Tamanhodo Pacote de Rede controlam o desempenho da instância do SQL Server. Muitas dessas opções podem ser alteradas dinamicamente, mas, em alguns casos, o valor é configurado primeiro e, em seguida, alterado quando a instância do SQL Server é reiniciada.

Há uma propriedade de objeto Configuration para cada opção de configuração. Usando o objeto ConfigProperty, você pode modificar o parâmetro de configuração global. Muitas propriedades têm valores máximo e mínimo que também são armazenados como propriedades ConfigProperty. Essas propriedades exigem que o Alter método confirme a alteração na instância do SQL Server.

Todas as opções de configuração no objeto Configuration devem ser alteradas pelo administrador do sistema.

Exemplos

Para os exemplos de código a seguir, selecione o ambiente de programação, o modelo de programação e a linguagem de programação para criar seu aplicativo. Para obter mais informações, consulte Criar um projeto SMO do Visual C# no Visual Studio .NET.

Modificando as opções de configuração do SQL Server no Visual Basic

O exemplo de código mostra como atualizar uma opção de configuração no Visual Basic .NET. Ele também recupera e exibe informações sobre os valores máximo e mínimo da opção de configuração especificada. Por fim, o programa informa ao usuário se a alteração foi feita dinamicamente ou se está armazenada até que a instância do SQL Server seja reiniciada.

'Connect to the local, default instance of SQL Server.
Dim srv As Server
srv = New Server
'Display all the configuration options.
Dim p As ConfigProperty
For Each p In srv.Configuration.Properties
    Console.WriteLine(p.DisplayName)
Next
Console.WriteLine("There are " & srv.Configuration.Properties.Count.ToString & " configuration options.")
'Display the maximum and minimum values for ShowAdvancedOptions.
Dim min As Integer
Dim max As Integer
min = srv.Configuration.ShowAdvancedOptions.Minimum
max = srv.Configuration.ShowAdvancedOptions.Maximum
Console.WriteLine("Minimum and Maximum values are " & min & " and " & max & ".")
'Modify the value of ShowAdvancedOptions and run the Alter method.
srv.Configuration.ShowAdvancedOptions.ConfigValue = 0
srv.Configuration.Alter()
'Display when the change takes place according to the IsDynamic property.
If srv.Configuration.ShowAdvancedOptions.IsDynamic = True Then
    Console.WriteLine("Configuration option has been updated.")
Else
    Console.WriteLine("Configuration option will be updated when SQL Server is restarted.")
End If

Modificando configurações do SQL Server no Visual Basic

O exemplo de código exibe informações sobre a instância do SQL Server em Information e Settings, e modifica as configurações em Settings e UserOptionsas propriedades do objeto.

No exemplo, ambos os objetos UserOptions e Settings têm um método Alter. Você pode executar os métodos Alter para eles individualmente.

'Connect to the local, default instance of SQL Server.
Dim srv As Server
srv = New Server
'Display information about the instance of SQL Server in Information and Settings.
Console.WriteLine("OS Version = " & srv.Information.OSVersion)
Console.WriteLine("State = " & srv.Settings.State.ToString)
'Display information specific to the current user in UserOptions.
Console.WriteLine("Quoted Identifier support = " & srv.UserOptions.QuotedIdentifier)
'Modify server settings in Settings.

srv.Settings.LoginMode = ServerLoginMode.Integrated
'Modify settings specific to the current connection in UserOptions.
srv.UserOptions.AbortOnArithmeticErrors = True
'Run the Alter method to make the changes on the instance of SQL Server.
srv.Alter()

Modificando configurações do SQL Server no Visual C#

O exemplo de código exibe informações sobre a instância do SQL Server em Information e Settings, e modifica as configurações em Settings e UserOptionsas propriedades do objeto.

No exemplo, ambos os objetos UserOptions e Settings têm um método Alter. Você pode executar os métodos Alter para eles individualmente.

//Connect to the local, default instance of SQL Server.

{  
            Server srv = new Server();  
            //Display all the configuration options.   
  
            foreach (ConfigProperty p in srv.Configuration.Properties)  
            {  
                Console.WriteLine(p.DisplayName);  
            }  
            Console.WriteLine("There are " + srv.Configuration.Properties.Count.ToString() + " configuration options.");  
            //Display the maximum and minimum values for ShowAdvancedOptions.   
            int min = 0;  
            int max = 0;  
            min = srv.Configuration.ShowAdvancedOptions.Minimum;  
            max = srv.Configuration.ShowAdvancedOptions.Maximum;  
            Console.WriteLine("Minimum and Maximum values are " + min + " and " + max + ".");  
            //Modify the value of ShowAdvancedOptions and run the Alter method.   
            srv.Configuration.ShowAdvancedOptions.ConfigValue = 0;  
            srv.Configuration.Alter();  
            //Display when the change takes place according to the IsDynamic property.   
            if (srv.Configuration.ShowAdvancedOptions.IsDynamic == true)  
            {  
                Console.WriteLine("Configuration option has been updated.");  
            }  
            else  
            {  
                Console.WriteLine("Configuration option will be updated when SQL Server is restarted.");  
            }  
        }  

Modificando configurações do SQL Server no PowerShell

O exemplo de código exibe informações sobre a instância do SQL Server em Information e Settings, e modifica as configurações em Settings e UserOptionsas propriedades do objeto.

No exemplo, ambos os objetos UserOptions e Settings têm um método Alter. Você pode executar os métodos Alter para eles individualmente.

# Set the path context to the local, default instance of SQL Server.  
CD \sql\localhost\  
$srv = get-item default  
  
#Display information about the instance of SQL Server in Information and Settings.  
"OS Version = " + $srv.Information.OSVersion  
"State = "+ $srv.Settings.State.ToString()  
  
#Display information specific to the current user in UserOptions.  
"Quoted Identifier support = " + $srv.UserOptions.QuotedIdentifier  
  
#Modify server settings in Settings.  
$srv.Settings.LoginMode = [Microsoft.SqlServer.Management.SMO.ServerLoginMode]::Integrated  
  
#Modify settings specific to the current connection in UserOptions.  
$srv.UserOptions.AbortOnArithmeticErrors = $true  
  
#Run the Alter method to make the changes on the instance of SQL Server.  
$srv.Alter()  

Modificando as opções de configuração do SQL Server no PowerShell

O exemplo de código mostra como atualizar uma opção de configuração no Visual Basic .NET. Ele também recupera e exibe informações sobre os valores máximo e mínimo da opção de configuração especificada. Por fim, o programa informa ao usuário se a alteração foi feita dinamicamente ou se está armazenada até que a instância do SQL Server seja reiniciada.

#Get a server object which corresponds to the default instance replace LocalMachine with the physical server  
cd \sql\LocalMachine  
$svr = get-item default  
  
#enumerate its properties  
foreach ($Item in $Svr.Configuration.Properties)   
{  
 $Item.DisplayName  
}  
  
"There are " + $svr.Configuration.Properties.Count.ToString() + " configuration options."  
  
#Display the maximum and minimum values for ShowAdvancedOptions.  
$min = $svr.Configuration.ShowAdvancedOptions.Minimum  
$max = $svr.Configuration.ShowAdvancedOptions.Maximum  
"Minimum and Maximum values are " + $min.ToString() + " and " + $max.ToString() + "."  
  
#Modify the value of ShowAdvancedOptions and run the Alter method.  
$svr.Configuration.ShowAdvancedOptions.ConfigValue = 0  
$svr.Configuration.Alter()  
  
#Display when the change takes place according to the IsDynamic property.  
If ($svr.Configuration.ShowAdvancedOptions.IsDynamic -eq $true)  
 {    
   "Configuration option has been updated."  
 }  
Else  
{  
    "Configuration option will be updated when SQL Server is restarted."  
}