TechNet
Exportieren (0) Drucken
Alle erweitern

Aktivieren oder Deaktivieren eines Servernetzwerkprotokolls

 

Betrifft: SQL Server 2016

Alle Netzwerkprotokolle werden vom SQL Server -Setup installiert, sie können jedoch aktiviert oder nicht aktiviert werden. In diesem Thema wird beschrieben, wie mit SQL Server 2016 Configuration Manager oder PowerShell ein Servernetzwerkprotokoll in SQL Server aktiviert oder deaktiviert wird. Datenbankmodul muss beendet und neu gestartet werden, damit die Änderung wirksam wird.

System_CAPS_ICON_important.jpg Wichtig


Während des Setups von SQL Server Express wird eine Anmeldung für die Gruppe BUILTIN\Users hinzugefügt. Dies ermöglicht allen authentifizierten Benutzern des Computers den Zugriff auf die Instanz von SQL Server Express als Element der öffentlichen Rolle. Die BUILTIN\Users-Anmeldung kann sicher entfernt werden, um den Datenbankmodul-Zugriff auf Computerbenutzer zu beschränken, die eigene Logins besitzen oder Mitglieder anderer Windows-Gruppen mit Logins sind.

System_CAPS_ICON_warning.jpg Warnung


SQL Server und Microsoft -Datenanbieter für SQL Server unterstützen TLS 1.0 und SSL 3.0. Wenn Sie ein anderes Protokoll (beispielsweise TLS 1.1 oder TLS 1.2) erzwingen, indem Sie Änderungen an der SChannel-Betriebssystemebene vornehmen, können Sie möglicherweise keine Verbindung mit SQL Server herstellen.

In diesem Thema

So aktivieren Sie ein Server-Netzwerkprotokoll

  1. Erweitern Sie im SQL Server -Konfigurations-Manager im Konsolenbereich SQL Server-Netzwerkkonfiguration.

  2. Klicken Sie im Konsolenbereich auf Protokolle für <Instanzname>.

  3. Klicken Sie im Detailbereich mit der rechten Maustaste auf das zu ändernde Protokoll, und klicken Sie dann auf Aktivieren oder Deaktivieren.

  4. Klicken Sie im Konsolenbereich auf SQL Server-Dienste.

  5. Klicken Sie im Detailbereich mit der rechten Maustaste auf SQL Server (<Instanzname>), und klicken Sie dann auf Neu starten, um den SQL Server-Dienst zu beenden und neu zu starten.

So aktivieren Sie ein Server-Netzwerkprotokoll mit PowerShell

  1. Öffnen Sie eine Eingabeaufforderung unter Administratorberechtigungen.

  2. Starten Sie Windows PowerShell aus der Taskleiste, oder klicken Sie auf "Start", auf "Alle Programme", auf "Zubehör", auf "Windows PowerShell" und dann auf "Windows PowerShell".

  3. Importieren Sie das sqlps-Modul durch Eingeben von Import-Module "sqlps".

  4. Führen Sie die folgenden Anweisungen aus, um die Protokolle für TCP und Named Pipes zu aktivieren. Ersetzen Sie <computer_name> mit dem Namen des Computers, auf dem SQL Serverausgeführt wird. Wenn Sie eine benannte Instanz konfigurieren, ersetzen Sie MSSQLSERVER durch den Namen der Instanz.

    Um die Protokolle zu deaktivieren, legen Sie die IsEnabled -Eigenschaften auf $falsefest.

    $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  
    
    

So konfigurieren Sie die Protokolle für den lokalen Computer

  • Wenn das Skript lokal ausgeführt wird und den lokalen Computer konfiguriert, kann SQL Server PowerShell das Skript flexibler gestalten, indem der lokale Computernamen dynamisch festgelegt wird. Um den lokalen Computernamen abzurufen, ersetzen Sie die Zeile, die die $uri -Variable festlegt, mit der folgenden Zeile.

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

So starten Sie das Datenbankmodul mit SQL Server PowerShell neu

  • Nachdem Sie Protokolle aktiviert oder deaktiviert haben, müssen Sie Datenbankmodul beenden und neu starten, damit die Änderung wirksam wird. Führen Sie die folgenden Anweisungen aus, um die Standardinstanz mithilfe von SQL Server PowerShell zu beenden und zu starten. Um eine benannte Instanz zu beenden und zu starten, ersetzen Sie 'MSSQLSERVER' durch '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  
    
    

Community-Beiträge

HINZUFÜGEN
Anzeigen:
© 2016 Microsoft