Partilhar via


Habilitar ou desabilitar um protocolo de rede do servidor

Todos os protocolos de rede são instalados pela Instalação do SQL Server, mas podem ou não estar habilitados. Este tópico descreve como habilitar ou desabilitar um protocolo de rede de servidor no SQL Server 2014 usando o SQL Server Configuration Manager ou o PowerShell. O Mecanismo de Banco de Dados deve ser interrompido e reiniciado para que a alteração entre em vigor.

Importante

Durante instalação do SQL Server Express , é adicionado um logon para o grupo BUILTIN\Users. Assim, todos os usuários autenticados do computador podem acessar a instância do SQL Server Express como membros da função pública. O logon BUILTIN\Users pode ser removido com segurança para restringir o acesso a Mecanismo de Banco de Dados aos usuários do computador que têm logons individuais ou que são membros de outros grupos do Windows com logons.

Aviso

Os provedores de dados do SQL Server e da Microsoft somente dão suporte para TLS 1.0 e SSL 3.0. Se você impuser um protocolo diferente (como TLS 1.1 ou TLS 1.2) fazendo alterações na camada SChannel do sistema operacional, suas conexões ao SQL Server poderão falhar.

Neste tópico

Usando o SQL Server Configuration Manager

Para habilitar um protocolo de rede de servidor

  1. No SQL Server Configuration Manager, no painel de console, expanda Configuração de Rede do SQL Server.

  2. No painel do console, clique em Protocolos para o< nome da> instância.

  3. No painel de detalhes, clique com o botão direito do mouse no protocolo que você quer alterar e clique em Habilitar ou Desabilitar.

  4. No painel do console, clique em Serviços do SQL Server.

  5. No painel de detalhes, clique com botão direito do mouse em SQL Server (<nome da instância>) e, em seguida, clique em Reiniciar para parar e reiniciar o serviço do SQL Server.

Usando o SQL Server PowerShell

Para habilitar um protocolo de rede de servidor usando o PowerShell

  1. Usando as permissões de administrador, abra um prompt de comando.

  2. Inicie o Windows PowerShell 2.0 na barra de tarefas ou clique em Iniciar, Todos os Programas, Acessórios, Windows PowerShell e Windows PowerShell.

  3. Importe o módulo sqlps inserindo Import-Module "sqlps"

  4. Execute as instruções a seguir para habilitar os protocolos TCP e de pipes nomeados. Substitua <computer_name> pelo nome do computador que está executando o SQL Server. Se estiver configurando uma instância nomeada, substitua MSSQLSERVER pelo nome da instância.

    Para desabilitar protocolos, defina as propriedades IsEnabled como $false.

    $smo = 'Microsoft.SqlServer.Management.Smo.'  
    $wmi = new-object ($smo + 'Wmi.ManagedComputer').  
    
    # List the object properties, including the instance names.  
    $Wmi  
    
    # Enable the TCP protocol on the default instance.  
    $uri = "ManagedComputer[@Name='<computer_name>']/ ServerInstance[@Name='MSSQLSERVER']/ServerProtocol[@Name='Tcp']"  
    $Tcp = $wmi.GetSmoObject($uri)  
    $Tcp.IsEnabled = $true  
    $Tcp.Alter()  
    $Tcp  
    
    # Enable the named pipes protocol for the default instance.  
    $uri = "ManagedComputer[@Name='<computer_name>']/ ServerInstance[@Name='MSSQLSERVER']/ServerProtocol[@Name='Np']"  
    $Np = $wmi.GetSmoObject($uri)  
    $Np.IsEnabled = $true  
    $Np.Alter()  
    $Np  
    

Para configurar os protocolos para o computador local

  • Quando o script é executado localmente e configura o computador local, o SQL Server PowerShell pode tornar o script mais flexível determinando o nome do computador local dinamicamente. Para recuperar o nome de computador local, substitua a linha que define a variável $uri pela linha a seguir.

    $uri = "ManagedComputer[@Name='" + (Get-Item env:\computername).Value + "']/ServerInstance[@Name='MSSQLSERVER']/ServerProtocol[@Name='Tcp']"  
    

Para reiniciar o Mecanismo de Banco de Dados usando o SQL Server PowerShell

  • Depois de habilitar ou desabilitar os protocolos, você deve parar e reiniciar o Mecanismo de Banco de Dados para que a alteração entre em vigor. Execute as instruções a seguir para parar e iniciar a instância padrão usando o SQL Server PowerShell. Para parar e iniciar uma instância nomeada, substitua 'MSSQLSERVER' por 'MSSQL$<instance_name>'.

    # Get a reference to the ManagedComputer class.  
    CD SQLSERVER:\SQL\<computer_name>  
    $Wmi = (Get-Item .).ManagedComputer  
    # Get a reference to the default instance of the Database Engine.  
    $DfltInstance = $Wmi.Services['MSSQLSERVER']  
    # Display the state of the service.  
    $DfltInstance  
    # Stop the service.  
    $DfltInstance.Stop();  
    # Wait until the service has time to stop.  
    # Refresh the cache.  
    $DfltInstance.Refresh();   
    # Display the state of the service.  
    $DfltInstance  
    # Start the service again.  
    $DfltInstance.Start();  
    # Wait until the service has time to start.  
    # Refresh the cache and display the state of the service.  
    $DfltInstance.Refresh(); $DfltInstance