Konfigurieren von SQL Server für Linux mit dem mssql-conf-Tool

Gilt für:yesSQL Server (alle unterstützten Versionen) – Linux

mssql-conf ist ein Konfigurationsskript, das mit SQL Server 2017 für Red Hat Enterprise Linux, SUSE Linux Enterprise Server und Ubuntu installiert wird. Es ändert die mssql.conf-Datei, in der Konfigurationswerte gespeichert sind. Sie können das mssql-conf-Hilfsprogramm zum Festlegen der folgenden Parameter verwenden:

Parameter Beschreibung
Agent Aktivieren des SQL Server-Agents.
Authentifizieren mit Windows Einstellungen für die Windows Server Active Directory-Authentifizierung.
Sortierung Festlegen einer neuen Sortierung für SQL Server für Linux.
Kundenfeedback Festlegen, ob SQL Server Feedback an Microsoft sendet.
Datenbank-E-Mail-Profil Festlegen des Standardprofils von Datenbank-E-Mails für SQL Server für Linux.
Standarddatenverzeichnis Festlegen eines anderen Standardverzeichnisses für neue SQL Server-Datenbank-Datendateien (MDF).
Standardprotokollverzeichnis Festlegen eines anderen Standardverzeichnisses für neue SQL Server-Datenbank-Protokolldateien (LDF).
Standardverzeichnis für Masterdatenbank Ändern des Standardverzeichnisses für die master-Datenbank und für Protokolldateien.
Standarddateiname für Masterdatenbank Ändern des Namens für master-Datenbank-Dateien.
Standardverzeichnis für Speicherabbilder Festlegen eines anderen Standardverzeichnisses für neue Speicherabbilder und andere Dateien zur Problembehandlung.
Standardverzeichnis für Fehlerprotokolle Festlegen eines anderen Standardverzeichnisses für neue SQL Server-Dateien für Fehlerprotokolle, Standardprofiler-Ablaufverfolgungen, XE-Systemintegritätssitzungen und Hekaton-XE-Sitzungen.
Standardverzeichnis für Sicherungen Festlegen eines anderen Standardverzeichnisses für neue Sicherungsdateien.
Typ des Speicherabbilds Festlegen des Typs der Speicherabbilddateien, die erfasst werden sollen.
Edition Festlegen der SQL Server-Edition
Hochverfügbarkeit Aktivieren von Verfügbarkeitsgruppen.
Verzeichnis für lokale Überwachungen Festlegen eines Verzeichnisses, dem Dateien für lokale Überwachungen hinzugefügt werden sollen.
Gebietsschema Festlegen eines Gebietsschemas, das SQL Server verwenden soll.
Arbeitsspeicherlimit Festlegen des Arbeitsspeicherlimits für SQL Server.
Netzwerkeinstellungen Zusätzliche Netzwerkeinstellungen für SQL Server.
Microsoft Distributed Transaction Coordinator Konfigurieren von MS DTC unter Linux und Durchführen einer Problembehandlung.
TCP-Port Festlegen eines anderen Ports, auf dem SQL Server nach Verbindungen lauscht.
TLS Konfigurieren der Verschlüsselung mit Transport Layer Security.
Ablaufverfolgungsflags Festlegen der Ablaufverfolgungsflags, die vom Dienst verwendet werden sollen.

mssql-conf ist ein Konfigurationsskript, das mit SQL Server 2019 (15.x) für Red Hat Enterprise Linux, SUSE Linux Enterprise Server und Ubuntu installiert wird. Mit diesem Hilfsprogramm können Sie die folgenden Parameter festlegen:

Parameter Beschreibung
Agent Aktivieren des SQL Server-Agents.
Authentifizieren mit Windows Einstellungen für die Windows Server Active Directory-Authentifizierung.
Sortierung Festlegen einer neuen Sortierung für SQL Server für Linux.
Kundenfeedback Festlegen, ob SQL Server Feedback an Microsoft sendet.
Datenbank-E-Mail-Profil Festlegen des Standardprofils von Datenbank-E-Mails für SQL Server für Linux.
Standarddatenverzeichnis Festlegen eines anderen Standardverzeichnisses für neue SQL Server-Datenbank-Datendateien (MDF).
Standardprotokollverzeichnis Festlegen eines anderen Standardverzeichnisses für neue SQL Server-Datenbank-Protokolldateien (LDF).
Standardverzeichnis für Masterdatenbank-Dateien Ändern des Standardverzeichnisses für die master-Datenbank-Dateien auf einer vorhandenen SQL-Installation.
Standarddateiname für Masterdatenbank Ändern des Namens für master-Datenbank-Dateien.
Standardverzeichnis für Speicherabbilder Festlegen eines anderen Standardverzeichnisses für neue Speicherabbilder und andere Dateien zur Problembehandlung.
Standardverzeichnis für Fehlerprotokolle Festlegen eines anderen Standardverzeichnisses für neue SQL Server-Dateien für Fehlerprotokolle, Standardprofiler-Ablaufverfolgungen, XE-Systemintegritätssitzungen und Hekaton-XE-Sitzungen.
Standardverzeichnis für Sicherungen Festlegen eines anderen Standardverzeichnisses für neue Sicherungsdateien.
Typ des Speicherabbilds Festlegen des Typs der Speicherabbilddateien, die erfasst werden sollen.
Edition Festlegen der SQL Server-Edition
Hochverfügbarkeit Aktivieren von Verfügbarkeitsgruppen.
Verzeichnis für lokale Überwachungen Festlegen eines Verzeichnisses, dem Dateien für lokale Überwachungen hinzugefügt werden sollen.
Gebietsschema Festlegen eines Gebietsschemas, das SQL Server verwenden soll.
Arbeitsspeicherlimit Festlegen des Arbeitsspeicherlimits für SQL Server.
Microsoft Distributed Transaction Coordinator Konfigurieren von MS DTC unter Linux und Durchführen einer Problembehandlung.
Lizenzbedingungen für ML Services Festlegen, dass R- und Python-bezogene Lizenzbedingungen für mlservices-Pakete akzeptiert werden. Gilt nur für SQL Server 2019.
Netzwerkeinstellungen Zusätzliche Netzwerkeinstellungen für SQL Server.
outboundnetworkaccess Aktivieren des Zugriffs auf ausgehenden Netzwerkdatenverkehr für R-, Python- und Java-Erweiterungen von mlservices.
TCP-Port Festlegen eines anderen Ports, auf dem SQL Server nach Verbindungen lauscht.
TLS Konfigurieren der Verschlüsselung mit Transport Layer Security.
Ablaufverfolgungsflags Festlegen der Ablaufverfolgungsflags, die vom Dienst verwendet werden sollen.

mssql-conf ist ein Konfigurationsskript, das mit SQL Server 2022 (16.x) Preview für Red Hat Enterprise Linux und Ubuntu installiert wird. Mit diesem Hilfsprogramm können Sie die folgenden Parameter festlegen:

Parameter Beschreibung
Agent Aktivieren des SQL Server-Agents.
Authentifizierung über Azure AD Einstellungen für die Azure Active Directory-Authentifizierung.
Authentifizieren mit Windows Einstellungen für die Windows Server Active Directory-Authentifizierung.
Sortierung Festlegen einer neuen Sortierung für SQL Server für Linux.
Kundenfeedback Festlegen, ob SQL Server Feedback an Microsoft sendet.
Datenbank-E-Mail-Profil Festlegen des Standardprofils von Datenbank-E-Mails für SQL Server für Linux.
Standarddatenverzeichnis Festlegen eines anderen Standardverzeichnisses für neue SQL Server-Datenbank-Datendateien (MDF).
Standardprotokollverzeichnis Festlegen eines anderen Standardverzeichnisses für neue SQL Server-Datenbank-Protokolldateien (LDF).
Standardverzeichnis für Masterdatenbank-Dateien Ändern des Standardverzeichnisses für die master-Datenbank-Dateien auf einer vorhandenen SQL-Installation.
Standarddateiname für Masterdatenbank Ändern des Namens für master-Datenbank-Dateien.
Standardverzeichnis für Speicherabbilder Festlegen eines anderen Standardverzeichnisses für neue Speicherabbilder und andere Dateien zur Problembehandlung.
Standardverzeichnis für Fehlerprotokolle Festlegen eines anderen Standardverzeichnisses für neue SQL Server-Dateien für Fehlerprotokolle, Standardprofiler-Ablaufverfolgungen, XE-Systemintegritätssitzungen und Hekaton-XE-Sitzungen.
Standardverzeichnis für Sicherungen Festlegen eines anderen Standardverzeichnisses für neue Sicherungsdateien.
Typ des Speicherabbilds Festlegen des Typs der Speicherabbilddateien, die erfasst werden sollen.
Edition Festlegen der SQL Server-Edition
Hochverfügbarkeit Aktivieren von Verfügbarkeitsgruppen.
Verzeichnis für lokale Überwachungen Festlegen eines Verzeichnisses, dem Dateien für lokale Überwachungen hinzugefügt werden sollen.
Gebietsschema Festlegen eines Gebietsschemas, das SQL Server verwenden soll.
Arbeitsspeicherlimit Festlegen des Arbeitsspeicherlimits für SQL Server.
Microsoft Distributed Transaction Coordinator Konfigurieren von MS DTC unter Linux und Durchführen einer Problembehandlung.
Lizenzbedingungen für ML Services Festlegen, dass R- und Python-bezogene Lizenzbedingungen für mlservices-Pakete akzeptiert werden. Gilt nur für SQL Server 2019.
Netzwerkeinstellungen Zusätzliche Netzwerkeinstellungen für SQL Server.
outboundnetworkaccess Aktivieren des Zugriffs auf ausgehenden Netzwerkdatenverkehr für R-, Python- und Java-Erweiterungen von mlservices.
TCP-Port Festlegen eines anderen Ports, auf dem SQL Server nach Verbindungen lauscht.
TLS Konfigurieren der Verschlüsselung mit Transport Layer Security.
Ablaufverfolgungsflags Festlegen der Ablaufverfolgungsflags, die vom Dienst verwendet werden sollen.

Tipp

Einige dieser Einstellungen können auch mit Umgebungsvariablen konfiguriert werden. Weitere Informationen finden Sie unter Konfigurieren von SQL Server-Einstellungen mit Umgebungsvariablen.

Verwendungstipps

  • Nehmen Sie für Always On-Verfügbarkeitsgruppen und Cluster mit gemeinsam genutzten Datenträgern immer dieselben Konfigurationsänderungen an jedem Knoten vor.

  • Versuchen Sie bei Clustern mit gemeinsam genutzten Datenträgern nicht, den Dienst mssql-server neu zu starten, um die Änderungen zu übernehmen. SQL Server wird als Anwendung ausgeführt. Versetzen Sie die Ressource stattdessen zuerst in den Offline- und anschließend wieder in den Onlinezustand.

  • In den Beispielen wird für die Ausführung von mssql-conf der vollständige Pfad verwendet: /opt/mssql/bin/mssql-conf. Wenn Sie zu diesem Pfad navigieren, müssen Sie mssql-conf im aktuellen Verzeichnis ausführen: ./mssql-conf.

Aktivieren des SQL Server-Agents.

Durch die Einstellung sqlagent.enabled wird der SQL Server-Agent aktiviert. Standardmäßig ist der SQL Server-Agent deaktiviert. Wenn sqlagent.enabled nicht in der Einstellungsdatei „mssql.conf“ vorhanden ist, nimmt SQL Server intern an, dass der SQL Server-Agent deaktiviert ist.

Führen Sie die folgenden Schritte aus, um diese Einstellung zu ändern:

  1. Aktivieren Sie den SQL Server-Agent:

    sudo /opt/mssql/bin/mssql-conf set sqlagent.enabled true 
    
  2. Starten Sie den SQL Server-Dienst neu:

    sudo systemctl restart mssql-server
    

Festlegen des Standardprofils von Datenbank-E-Mails für SQL Server für Linux

Mit der Einstellung sqlagent.databasemailprofile können Sie das Standardprofil von Datenbank-E-Mails für E-Mail-Benachrichtigungen festlegen.

sudo /opt/mssql/bin/mssql-conf set sqlagent.databasemailprofile <profile_name>

SQL-Agent-Fehlerprotokolle

Mit den Einstellungen sqlagent.errorlogfile und sqlagent.errorlogginglevel können Sie den Protokolldateipfad und Protokolliergrad für den SQL-Agent angeben.

sudo /opt/mssql/bin/mssql-conf set sqlagent.errorfile <path>

SQL-Agent-Protokolliergrade sind folgende Bitmaskenwerte:

  • 1 = Fehler
  • 2 = Warnungen
  • 4 = Info

Wenn Sie alle Grade erfassen möchten, verwenden Sie 7 als Wert.

sudo /opt/mssql/bin/mssql-conf set sqlagent.errorlogginglevel <level>

Konfigurieren der Azure Active Directory-Authentifizierung

Ab SQL Server 2022 (16.x) Preview können Sie Azure Active Directory (Azure AD) für SQL Server konfigurieren. Weitere Informationen finden Sie unter Tutorial: Einrichten der Azure Active Directory-Authentifizierung für SQL Server.

Ändern des Azure AD-Standardzertifikatpfads

Standardmäßig wird die Azure AD-Zertifikatdatei in /var/opt/mssql/aadsecrets/ gespeichert. Sie können diesen Pfad ändern, wenn Sie einen Zertifikatspeicher oder ein verschlüsseltes Laufwerk verwenden. Um den Pfad zu ändern, können Sie den folgenden Befehl verwenden:

sudo /opt/mssql/bin/mssql-conf set network.aadcertificatefilepath /path/to/new/location.pfx

Im vorherigen Beispiel ist /path/to/new/location.pfx Ihr bevorzugter Pfad einschließlich des Zertifikatnamens.

Das vom SQL Server Azure Arc-Agent für Azure AD-Authentifizierung heruntergeladene Zertifikat wird jetzt an diesem Speicherort gespeichert. Sie können dies nicht in /var/opt/mssql/secrets ändern.

Azure AD-Konfigurationsoptionen

Die folgenden Optionen werden von der Azure AD-Authentifizierung für eine Instanz von SQL Server verwendet, die unter Linux ausgeführt wird.

Warnung

Azure AD-Parameter werden vom Azure Arc-Agent konfiguriert und sollten nicht manuell neu konfiguriert werden.

Option BESCHREIBUNG
network.aadauthenticationendpoint Endpunkt für die Azure AD-Authentifizierung
network.aadcertificatefilepath Pfad zur Zertifikatdatei für die Authentifizierung bei Azure AD
network.aadclientcertblacklist Blockliste für Azure AD-Clientzertifikate
network.aadclientid Azure AD-Client-GUID
network.aadfederationmetadataendpoint Endpunkt für Azure AD-Verbundmetadaten
network.aadgraphapiendpoint Endpunkt für die Azure AD Graph-API
network.aadgraphendpoint Azure AD Graph-Endpunkt
network.aadissuerurl Azure AD-Aussteller-URL
network.aadmsgraphendpoint Azure AD MS Graph-Endpunkt
network.aadonbehalfofauthority Azure AD im Auftrag einer Behörde
network.aadprimarytenant GUID des primären Azure AD-Mandanten
network.aadsendx5c Azure AD Send X5C
network.aadserveradminname Name des Azure AD-Kontos, das als sysadmin festgelegt werden soll
network.aadserveradminsid SID des Azure AD-Kontos, das als sysadmin festgelegt werden soll
network.aadserveradmintype Typ des Azure AD-Kontos, das als sysadmin festgelegt werden soll
network.aadserviceprincipalname Azure AD-Dienstprinzipalname
network.aadserviceprincipalnamenoslash Azure AD-Dienstprinzipalname ohne Schrägstrich
network.aadstsurl Azure AD-STS-URL

Konfigurieren der Azure Active Directory-Authentifizierung

Die Option setup-ad-keytab kann zum Erstellen einer Schlüsseltabelle verwendet werden, aber die Benutzer- und Dienstprinzipalnamen (SPNs) müssen für die Verwendung dieser Option erstellt worden sein. Das Active Directory-Hilfsprogramm adutil kann verwendet werden, um Benutzer*innen, SPNs und Schlüsseltabellen zu erstellen.

Führen Sie für die Optionen für die Verwendung von setup-ad-keytab den folgenden Befehl aus:

sudo /opt/mssql/bin/mssql-conf setup-ad-keytab --help

Die Option validate-ad-config überprüft die Konfiguration für die Active Directory-Authentifizierung.

Ändern der SQL Server-Sortierung

Mit der Option set-collation kann ein anderer unterstützter Sortierungswert angegeben werden. Um diese Änderung vorzunehmen, muss der SQL Server-Dienst beendet werden.

  1. Sichern Sie zuerst alle Benutzerdatenbanken auf Ihrem Server.

  2. Verwenden Sie dann die gespeicherte Prozedur sp_detach_db, um die Benutzerdatenbanken zu trennen.

  3. Führen Sie die Option set-collation aus, und folgen Sie den Anweisungen:

    sudo /opt/mssql/bin/mssql-conf set-collation
    
  4. Das Hilfsprogramm mssql-conf versucht, den angegebenen Sortierungswert festzulegen und den Dienst neu zu starten. Wenn Fehler auftreten, wird ein Rollback ausgeführt, und die Sortierung wird auf den vorherigen Wert zurückgesetzt.

  5. Stellen Sie die Sicherungen der Benutzerdatenbanken wieder her.

Führen Sie die sys.fn_helpcollations-Funktion aus, um eine Liste der unterstützten Sortierungen anzuzeigen: SELECT Name from sys.fn_helpcollations().

Konfigurieren von Einstellungen für Kundenfeedback

Mit der Einstellung telemetry.customerfeedback können Sie festlegen, ob SQL Server Feedback an Microsoft sendet. Standardmäßig ist dieser Wert für alle Editionen auf true festgelegt. Führen Sie die folgenden Befehle aus, um den Wert zu ändern:

Wichtig

Sie können das Kundenfeedback für kostenlose Editionen von SQL Server, Express und Developer nicht deaktivieren.

  1. Führen Sie das Skript mssql-conf als Rootbenutzer*in mit dem Befehl set für telemetry.customerfeedback aus. Im folgenden Beispiel wird das Kundenfeedback durch die Angabe von false deaktiviert.

    sudo /opt/mssql/bin/mssql-conf set telemetry.customerfeedback false
    
  2. Starten Sie den SQL Server-Dienst neu:

    sudo systemctl restart mssql-server
    

Weitere Informationen finden Sie unter Kundenfeedback für SQL Server für Linux und SQL Server-Datenschutzbestimmungen.

Ändern des Standardspeicherorts für das Verzeichnis der Datenbank- oder Protokolldateien

Mit den Einstellungen filelocation.defaultdatadir und filelocation.defaultlogdir können Sie den Speicherort festlegen, an dem die neuen Datenbank- und Protokolldateien erstellt werden. Standardmäßig ist der Speicherort /var/opt/mssql/data. Führen Sie die folgenden Schritte aus, um diese Einstellungen zu ändern:

  1. Erstellen Sie das Zielverzeichnis für neue Datenbank- und Protokolldateien. Im folgenden Beispiel wird das Verzeichnis /tmp/data erstellt:

    sudo mkdir /tmp/data
    
  2. Ändern Sie Besitzer und Gruppe des Verzeichnisses in den mssql-Benutzer:

    sudo chown mssql /tmp/data
    sudo chgrp mssql /tmp/data
    
  3. Verwenden Sie mssql-conf mit dem Befehl set, um das Standarddatenverzeichnis zu ändern:

    sudo /opt/mssql/bin/mssql-conf set filelocation.defaultdatadir /tmp/data
    
  4. Starten Sie den SQL Server-Dienst neu:

    sudo systemctl restart mssql-server
    
  5. Nun werden alle Datenbankdateien für neu erstellte Datenbanken an diesem Speicherort gespeichert. Wenn Sie für die Protokolldateien (LDF) der neuen Datenbanken einen anderen Speicherort festlegen möchten, können Sie den folgenden „set“-Befehl nutzen:

    sudo /opt/mssql/bin/mssql-conf set filelocation.defaultlogdir /tmp/log
    
  6. Auch dieser Befehl setzt voraus, dass das Verzeichnis /tmp/log vorhanden ist und dem Benutzer sowie der Gruppe mssql zugeordnet ist.

Ändern des Standardspeicherorts für das Verzeichnis der master-Datenbank-Dateien

Mit den Einstellungen filelocation.masterdatafile und filelocation.masterlogfile können Sie einen anderen Speicherort festlegen, an dem die SQL Server-Engine nach master-Datenbank-Dateien sucht. Standardmäßig ist der Speicherort /var/opt/mssql/data.

Führen Sie die folgenden Schritte aus, um diese Einstellungen zu ändern:

  1. Erstellen Sie das Zielverzeichnis für neue Fehlerprotokolldateien. Im folgenden Beispiel wird das Verzeichnis /tmp/masterdatabasedir erstellt:

    sudo mkdir /tmp/masterdatabasedir
    
  2. Ändern Sie Besitzer und Gruppe des Verzeichnisses in den mssql-Benutzer:

    sudo chown mssql /tmp/masterdatabasedir
    sudo chgrp mssql /tmp/masterdatabasedir
    
  3. Verwenden Sie mssql-conf mit dem Befehl set, um das Standardverzeichnis der master-Datenbank für die Masterdaten und Protokolldateien zu ändern:

    sudo /opt/mssql/bin/mssql-conf set filelocation.masterdatafile /tmp/masterdatabasedir/master.mdf
    sudo /opt/mssql/bin/mssql-conf set filelocation.masterlogfile /tmp/masterdatabasedir/mastlog.ldf
    

    Hinweis

    Dadurch werden nicht nur die Masterdaten und Protokolldateien, sondern auch das Standardverzeichnis für alle anderen Systemdatenbanken verschoben.

  4. Halten Sie den SQL Server-Dienst an:

    sudo systemctl stop mssql-server
    
  5. Verschieben Sie die Dateien „master.mdf“ und „masterlog.ldf“:

    sudo mv /var/opt/mssql/data/master.mdf /tmp/masterdatabasedir/master.mdf 
    sudo mv /var/opt/mssql/data/mastlog.ldf /tmp/masterdatabasedir/mastlog.ldf
    
  6. Starten Sie den SQL Server-Dienst:

    sudo systemctl start mssql-server
    

    Hinweis

    Wenn SQL Server die Dateien master.mdf und mastlog.ldf nicht im angegebenen Verzeichnis findet, wird eine auf Vorlagen basierende Kopie der Systemdatenbanken automatisch im angegebenen Verzeichnis erstellt. Anschließend kann SQL Server gestartet werden. Metadaten wie Benutzerdatenbanken, Serveranmeldungen, Serverzertifikate, Verschlüsselungsschlüssel, SQL-Agent-Aufträge oder alte Systemadministrator-Anmeldekennwörter werden jedoch nicht in der neuen master-Datenbank aktualisiert. Wenn Sie die vorhandenen Metadaten weiterhin verwenden möchten, müssen Sie SQL Server anhalten, die alten Dateien „master.mdf“ und „mastlog.ldf“ an den angegebenen Speicherort verschieben und SQL Server anschließend neu starten.

Ändern des Namens für master-Datenbank-Dateien.

Mit den Einstellungen filelocation.masterdatafile und filelocation.masterlogfile können Sie einen anderen Speicherort festlegen, an dem die SQL Server-Engine nach master-Datenbank-Dateien sucht. Außerdem können Sie damit den Namen der master-Datenbank- und Protokolldateien ändern.

Führen Sie die folgenden Schritte aus, um diese Einstellungen zu ändern:

  1. Halten Sie den SQL Server-Dienst an:

    sudo systemctl stop mssql-server
    
  2. Verwenden Sie mssql-conf mit dem Befehl set, um die master-Datenbank-Namen für die Masterdaten und Protokolldateien zu ändern:

    sudo /opt/mssql/bin/mssql-conf set filelocation.masterdatafile /var/opt/mssql/data/masternew.mdf
    sudo /opt/mssql/bin/mssql-conf set filelocation.mastlogfile /var/opt/mssql/data/mastlognew.ldf
    

    Wichtig

    Sie können den Namen der master-Datenbank- und Protokolldateien erst ändern, nachdem SQL Server gestartet wurde. Vor der ersten Ausführung wird von SQL Server vorausgesetzt, dass die Dateien „master.mdf“ und „mastlog.ldf“ heißen.

  3. Ändern Sie den Namen der master-Datenbank-Daten- und Protokolldateien:

    sudo mv /var/opt/mssql/data/master.mdf /var/opt/mssql/data/masternew.mdf
    sudo mv /var/opt/mssql/data/mastlog.ldf /var/opt/mssql/data/mastlognew.ldf
    
  4. Starten Sie den SQL Server-Dienst:

    sudo systemctl start mssql-server
    

Ändern des Standardspeicherorts für das Speicherabbildverzeichnis

Mit der Einstellung filelocation.defaultdumpdir können Sie einen anderen Standardspeicherort festlegen, an dem die Speicher- und SQL-Abbilder erstellt werden, wenn es zu einem Absturz kommt. Standardmäßig werden diese Dateien in /var/opt/mssql/log generiert.

Verwenden Sie die folgenden Befehle, um einen neuen Speicherort festzulegen:

  1. Erstellen Sie das Zielverzeichnis für neue Speicherabbilddateien. Im folgenden Beispiel wird das Verzeichnis /tmp/dump erstellt:

    sudo mkdir /tmp/dump
    
  2. Ändern Sie Besitzer und Gruppe des Verzeichnisses in den mssql-Benutzer:

    sudo chown mssql /tmp/dump
    sudo chgrp mssql /tmp/dump
    
  3. Verwenden Sie mssql-conf mit dem Befehl set, um das Standarddatenverzeichnis zu ändern:

    sudo /opt/mssql/bin/mssql-conf set filelocation.defaultdumpdir /tmp/dump
    
  4. Starten Sie den SQL Server-Dienst neu:

    sudo systemctl restart mssql-server
    

Ändern des Standardspeicherorts für das Verzeichnis der Fehlerprotokolldateien

Mit der Einstellung filelocation.errorlogfile können Sie einen anderen Speicherort festlegen, an dem Dateien für Fehlerprotokolle, Standardprofiler-Ablaufverfolgungen, XE-Systemintegritätssitzungen und Hekaton-XE-Sitzungen erstellt werden. Standardmäßig ist der Speicherort /var/opt/mssql/log. Das Verzeichnis, in dem die SQL-Fehlerprotokolldatei abgelegt wird, wird zum Standardverzeichnis für andere Protokolle.

Gehen Sie wie folgt vor, um diese Einstellungen zu ändern:

  1. Erstellen Sie das Zielverzeichnis für neue Fehlerprotokolldateien. Im folgenden Beispiel wird das Verzeichnis /tmp/logs erstellt:

    sudo mkdir /tmp/logs
    
  2. Ändern Sie Besitzer und Gruppe des Verzeichnisses in den mssql-Benutzer:

    sudo chown mssql /tmp/logs
    sudo chgrp mssql /tmp/logs
    
  3. Verwenden Sie mssql-conf mit dem Befehl set, um den Standardnamen für Fehlerprotokolle zu ändern:

    sudo /opt/mssql/bin/mssql-conf set filelocation.errorlogfile /tmp/logs/errorlog
    
  4. Starten Sie den SQL Server-Dienst neu:

    sudo systemctl restart mssql-server
    

Mit der Einstellung errorlog.numerrorlogs können Sie angeben, wie viele Fehlerprotokolle beibehalten werden sollen, bevor das Protokoll neu gestartet wird.

Ändern des Standardspeicherorts für das Sicherungsverzeichnis

Mit der Einstellung filelocation.defaultbackupdir können Sie einen anderen Standardspeicherort festlegen, an dem Sicherungsdateien erstellt werden. Standardmäßig werden diese Dateien in /var/opt/mssql/data generiert.

Verwenden Sie die folgenden Befehle, um einen neuen Speicherort festzulegen:

  1. Erstellen Sie das Zielverzeichnis für neue Sicherungsdateien. Im folgenden Beispiel wird das Verzeichnis /tmp/backup erstellt:

    sudo mkdir /tmp/backup
    
  2. Ändern Sie Besitzer und Gruppe des Verzeichnisses in den mssql-Benutzer:

    sudo chown mssql /tmp/backup
    sudo chgrp mssql /tmp/backup
    
  3. Verwenden Sie mssql-conf mit dem Befehl set, um das Standardsicherungsverzeichnis zu ändern:

    sudo /opt/mssql/bin/mssql-conf set filelocation.defaultbackupdir /tmp/backup
    
  4. Starten Sie den SQL Server-Dienst neu:

    sudo systemctl restart mssql-server
    

Festlegen der Einstellungen für Kernspeicherabbilder

Wenn in einem SQL Server-Prozess eine Ausnahme oder ein Absturz auftritt, erstellt SQL Server ein Speicherabbild. Das Erfassen eines Speicherabbilds kann sehr lange dauern und viel Speicherplatz in Anspruch nehmen. Um Ressourcen einzusparen und wiederholte Speicherabbilder zu vermeiden, können Sie die automatische Speicherabbilderfassung mit der Option coredump.disablecoredump deaktivieren.

sudo /opt/mssql/bin/mssql-conf set coredump.disablecoredump <true or false>

Benutzer können Speicherabbilder weiterhin manuell generieren, wenn das automatische Hauptspeicherabbild deaktiviert ist (coredump.disablecoredump auf true festlegen).

Sie können mit den Optionen coredump.coredumptype und coredump.captureminiandfull zwei Typen von Speicherabbildern festlegen, die von SQL Server erfasst werden. Diese Optionen beziehen sich auf die beiden Phasen zur Erfassung von Kernspeicherabbildern.

Die Erfassung in der ersten Phase wird durch die Einstellung coredump.coredumptype gesteuert. Mit dieser wird der Typ der Speicherabbilddatei festgelegt, die bei einer Ausnahme erstellt wird. Die zweite Phase wird durch die Einstellung coredump.captureminiandfull aktiviert. Wenn coredump.captureminiandfull auf TRUE festgelegt ist, werden die durch coredump.coredumptype angegebene Speicherabbilddatei und ein zweites Minimalspeicherabbild erstellt. Wenn Sie coredump.captureminiandfull auf „false“ festlegen, wird die zweite Erfassungsphase deaktiviert.

  1. Mit der Einstellung coredump.captureminiandfull können Sie festlegen, ob sowohl Minimalspeicherabbilder als auch vollständige Speicherabbilder erfasst werden.

    sudo /opt/mssql/bin/mssql-conf set coredump.captureminiandfull <true or false>
    

    Die Standardeinstellung ist false.

  2. Mit der Einstellung coredump.coredumptype können Sie den Typ der Speicherabbilddatei angeben.

    sudo /opt/mssql/bin/mssql-conf set coredump.coredumptype <dump_type>
    

    Die Standardeinstellung ist miniplus.

    In der folgenden Tabelle sind die möglichen Werte für coredump.coredumptype aufgeführt.

    type BESCHREIBUNG
    mini „mini“ ist der kleinste Speicherabbild-Dateityp. Mithilfe von Linux-Systeminformationen werden die Threads und Module eines Prozesses ermittelt. Das Speicherabbild enthält nur die Threadstapel und Module der Hostumgebung. Indirekte Speicherverweise oder globale Variablen sind dabei nicht enthalten.
    miniplus „miniplus“ ist mit „mini“ vergleichbar, jedoch werden zusätzliche Speicherbereiche erfasst. Interne Vorgänge in SQL PAL und in der Hostumgebung werden berücksichtigt, sodass der Sicherungskopie folgende Speicherbereiche hinzugefügt werden:

    - Verschiedene globale Variablen
    - Sämtlicher Arbeitsspeicher über 64 TB
    - Alle benannten Regionen, die in /proc/$pid/maps gefunden werden
    - Indirekten Arbeitsspeicher aus Threads und Stapeln
    - Threadinformationen
    - Zugeordnete TEBs und PEBs
    - Modulinformationen
    - VMM- und VAD-Struktur
    filtered Für „filtered“ wird ein subtraktionsbasierter Entwurf verwendet, bei dem sämtlicher Speicher im Prozess erfasst wird, falls er nicht explizit ausgeschlossen wird. Interne Vorgänge in SQL PAL und in der Hostumgebung werden berücksichtigt. Bestimmte Bereiche werden jedoch nicht im Speicherabbild erfasst.
    full Durch „full“ wird ein vollständiges Prozessspeicherabbild erstellt, das sämtliche Bereiche in /proc/$pid/maps einschließt. Dies wird nicht durch die Einstellung coredump.captureminiandfull gesteuert.

Edition

Die Edition von SQL Server kann mithilfe der Option set-edition geändert werden. Um die SQL Server-Edition zu ändern, muss der SQL Server-Dienst zuerst beendet werden. Weitere Informationen zu SQL Server für Linux-Editionen finden Sie unter SQL Server-Editionen.

Hochverfügbarkeit

Mit der Option hadr.hadrenabled können Sie Verfügbarkeitsgruppen auf Ihrer SQL Server-Instanz aktivieren. Mit dem folgenden Befehl wird die Einstellung hadr.hadrenabled auf 1 festgelegt, wodurch Verfügbarkeitsgruppen aktiviert werden. Sie müssen SQL Server neu starten, damit die Einstellung übernommen wird.

sudo /opt/mssql/bin/mssql-conf set hadr.hadrenabled  1
sudo systemctl restart mssql-server

Informationen zur Nutzung dieser Einstellung für Verfügbarkeitsgruppen finden Sie in den folgenden beiden Artikeln.

Festlegen des Verzeichnisses für lokale Überwachungen

Mit der Einstellung telemetry.userrequestedlocalauditdirectory werden lokale Überwachungen aktiviert. Zusätzlich können Sie das Verzeichnis festlegen, in dem die Protokolle für lokale Überwachungen erstellt werden.

  1. Erstellen Sie ein Zielverzeichnis für neue Protokolle von lokalen Überwachungen. Im folgenden Beispiel wird das Verzeichnis /tmp/audit erstellt:

    sudo mkdir /tmp/audit
    
  2. Ändern Sie Besitzer und Gruppe des Verzeichnisses in den mssql-Benutzer:

    sudo chown mssql /tmp/audit
    sudo chgrp mssql /tmp/audit
    
  3. Führen Sie das Skript mssql-conf als Rootbenutzer*in mit dem Befehl set für telemetry.userrequestedlocalauditdirectory aus:

    sudo /opt/mssql/bin/mssql-conf set telemetry.userrequestedlocalauditdirectory /tmp/audit
    
  4. Starten Sie den SQL Server-Dienst neu:

    sudo systemctl restart mssql-server
    

Weitere Informationen finden Sie unter Kundenfeedback für SQL Server für Linux.

Ändern des SQL Server-Gebietsschemas

Mit der Einstellung language.lcid können Sie ein anderes SQL Server-Gebietsschema festlegen. Dazu nutzen geben Sie einen der unterstützten Gebietsschemabezeichner (LCID) an.

  1. Im folgenden Beispiel wird Französisch (1036) als Gebietsschema festgelegt:

    sudo /opt/mssql/bin/mssql-conf set language.lcid 1036
    
  2. Starten Sie den SQL Server-Dienst neu, damit die Änderungen übernommen werden:

    sudo systemctl restart mssql-server
    

Festlegen des Arbeitsspeicherlimits

Mit der Einstellung memory.memorylimitmb können Sie festlegen, wie viel verfügbarer physischer Speicher (in MB) für SQL Server bereitgestellt wird. Der Standardwert ist 80 % des physischen Speichers.

  1. Führen Sie das Skript mssql-conf als Rootbenutzer*in mit dem Befehl set für memory.memorylimitmb aus. Im folgenden Beispiel wird als verfügbarer Arbeitsspeicher für SQL Server 3,25 GB (3.328 MB) festgelegt.

    sudo /opt/mssql/bin/mssql-conf set memory.memorylimitmb 3328
    
  2. Starten Sie den SQL Server-Dienst neu, damit die Änderungen übernommen werden:

    sudo systemctl restart mssql-server
    

Zusätzliche Arbeitsspeichereinstellungen

Für die Arbeitsspeichereinstellungen stehen die folgenden Optionen zur Verfügung.

Option Beschreibung
memory.disablememorypressure Deaktivieren Sie die SQL Server-Arbeitsspeicherauslastung. Die Werte können true oder false lauten.
memory.memory_optimized Aktivieren oder deaktivieren Sie arbeitsspeicheroptimierte SQL Server-Features: Aufklärung für persistente Arbeitsspeicherdateien, Arbeitsspeicherschutz. Die Werte können true oder false lauten.
memory.enablecontainersharedmemory Gilt nur für SQL Server-Container. Verwenden Sie diese Einstellung, um freigegebenen Arbeitsspeicher in SQL Server-Containern zu aktivieren. Sie ist standardmäßig auf false festgelegt. Die Werte können true oder false lauten.

Konfigurieren von MSDTC

Mit den Einstellungen network.rpcport und distributedtransaction.servertcpport können Sie den Microsoft Distributed Transaction Coordinator (MS DTC) konfigurieren. Führen Sie die folgenden Befehle aus, um diese Einstellungen zu ändern:

  1. Führen Sie das Skript mssql-conf als Rootbenutzer*in mit dem Befehl set für „network.rpcport“ aus:

    sudo /opt/mssql/bin/mssql-conf set network.rpcport <rcp_port>
    
  2. Legen Sie anschließend die Einstellung „distributedtransaction.servertcpport“ fest:

    sudo /opt/mssql/bin/mssql-conf set distributedtransaction.servertcpport <servertcpport_port>
    

Zusätzlich zum Festlegen dieser Werte müssen Sie auch das Routing konfigurieren und die Firewall für Port 135 aktualisieren. Weitere Informationen hierzu finden Sie unter Konfigurieren von MS DTC unter Linux.

Es sind einige weitere Einstellungen für mssql-conf verfügbar, mit denen Sie MS DTC überwachen und eine Problembehandlung durchführen können. Diese Einstellungen werden in der folgenden Tabelle kurz beschrieben. Weitere Informationen zu deren Verwendung finden Sie im Windows-Supportartikel Aktivieren der Diagnoseablaufverfolgungen für MS DTC.

Option BESCHREIBUNG
distributedtransaction.allowonlysecurerpccalls Konfigurieren von sicheren RPC-Aufrufen für verteilte Transaktionen.
distributedtransaction.fallbacktounsecurerpcifnecessary Konfigurieren von sicheren RPC-Aufrufen für verteilte Transaktionen
distributedtransaction.maxlogsize Dateigröße des DTC-Transaktionsprotokolls in MB. Der Standardwert ist 64 MB.
distributedtransaction.memorybuffersize Puffergröße des Ringspeichers, in dem Ablaufverfolgungen gespeichert werden. Die Größe wird in MB angegeben. Der Standardwert ist 10 MB.
distributedtransaction.servertcpport Port des MS DTC-RPC-Servers.
distributedtransaction.trace_cm Ablaufverfolgungen im Verbindungs-Manager.
distributedtransaction.trace_contact Ablaufverfolgungen für den Kontaktpool und für Kontakte.
distributedtransaction.trace_gateway Ablaufverfolgungen; Gatewayquelle
distributedtransaction.trace_log Protokollablaufverfolgung.
distributedtransaction.trace_misc Ablaufverfolgungen, die nicht in die anderen Kategorien fallen.
distributedtransaction.trace_proxy Ablaufverfolgungen, die im MS DTC-Proxy generiert werden.
distributedtransaction.trace_svc Ablaufverfolgungen für den Start der EXE-Datei und des Diensts
distributedtransaction.trace_trace Die eigentliche Ablaufverfolgungsinfrastruktur.
distributedtransaction.trace_util Für Ablaufverfolgungen verwendete Hilfsroutinen, die von unterschiedlichen Speicherorten aus aufgerufen werden.
distributedtransaction.trace_xa Ablaufverfolgungsquelle für XA-Transaktions-Manager (XATM).
distributedtransaction.tracefilepath Ordner, in dem Ablaufverfolgungsdateien gespeichert werden sollen.
distributedtransaction.turnoffrpcsecurity Aktivieren oder Deaktivieren der RPC-Sicherheit für verteilte Transaktionen.

Akzeptieren der Lizenzbedingungen für ML Services

Wenn Sie der Datenbank-Engine R- oder Python-Pakete für maschinelles Lernen hinzufügen möchten, müssen Sie die Lizenzbedingungen für die Open-Source-Verteilungen von R und Python akzeptieren. In der folgenden Tabelle werden alle verfügbaren Befehle oder Optionen aufgelistet, die sich auf die mlservices-Lizenzbedingungen beziehen. Für R und Python wird je nach Installation der gleiche Lizenzbedingungsparameter verwendet.

# For all packages: database engine and mlservices
# Setup prompts for mlservices EULAs, which you need to accept
sudo /opt/mssql/bin/mssql-conf setup

# Add R or Python to an existing installation
sudo /opt/mssql/bin/mssql-conf setup accept-eula-ml

# Alternative valid syntax
# Adds the EULA section to the INI and sets acceptulam to yes
sudo /opt/mssql/bin/mssql-conf set EULA accepteulaml Y

# Rescind EULA acceptance and removes the setting
sudo /opt/mssql/bin/mssql-conf unset EULA accepteulaml

In der Datei mssql.conf können Sie direkt festlegen, dass die Lizenzbedingungen akzeptiert werden:

[EULA]
accepteula = Y
accepteulaml = Y

Aktivieren des Zugriffs auf ausgehenden Netzwerkdatenverkehr

In SQL Server Machine Learning Services haben R-, Python- und Java-Erweiterungen standardmäßig keinen Zugriff auf ausgehenden Netzwerkdatenverkehr. Sie können mit mssql-conf die boolesche Eigenschaft „outboundnetworkaccess“ festlegen, um ausgehende Anforderungen zu aktivieren.

Starten Sie anschließend das SQL Server-Launchpad neu, um die aktualisierten Werte aus der INI-Datei zu lesen. Wenn eine Erweiterbarkeitseinstellung geändert wird, werden Sie in einer Neustartmeldung darauf hingewiesen.

# Adds the extensibility section and property.
# Sets "outboundnetworkaccess" to true.
# This setting is required if you want to access data or operations off the server.
sudo /opt/mssql/bin/mssql-conf set extensibility outboundnetworkaccess 1

# Turns off network access but preserves the setting
sudo /opt/mssql/bin/mssql-conf set extensibility outboundnetworkaccess 0

# Removes the setting and rescinds network access
sudo /opt/mssql/bin/mssql-conf unset extensibility.outboundnetworkaccess

Sie können „outboundnetworkaccess“ auch direkt der Datei mssql.conf hinzufügen:

[extensibility]
outboundnetworkaccess = 1

Ändern des TCP-Ports

Mit der Einstellung network.tcpport können Sie einen anderen TCP-Port festlegen, auf dem SQL Server nach Verbindungen lauscht. In der Standardeinstellung ist dies der Port 1433. Führen Sie die folgenden Befehle aus, um den Port zu ändern:

  1. Führen Sie das Skript mssql-conf als Rootbenutzer*in mit dem Befehl „set“ für „network.tcpport“ aus:

    sudo /opt/mssql/bin/mssql-conf set network.tcpport <new_tcp_port>
    
  2. Starten Sie den SQL Server-Dienst neu:

    sudo systemctl restart mssql-server
    
  3. Wenn Sie nun eine Verbindung mit SQL Server herstellen, müssen Sie nach dem Hostnamen oder der IP-Adresse den benutzerdefinierten Port angeben und ihn mit einem Komma abtrennen. Wenn Sie beispielsweise eine Verbindung mit sqlcmd herstellen möchten, müssen Sie den folgenden Befehl verwenden:

    sqlcmd -S localhost,<new_tcp_port> -U test -P test
    

Festlegen von TLS-Einstellungen

Mit den folgenden Optionen können Sie TLS für eine SQL Server-Instanz konfigurieren, die unter Linux ausgeführt wird.

Option BESCHREIBUNG
network.forceencryption Wenn für die Option der Wert 1 festgelegt ist, erzwingt SQL Server, dass alle Verbindungen verschlüsselt werden. Der Standardwert für diese Option ist 0.
network.tlscert Der absolute Pfad zur Zertifikatdatei, die SQL Server für TLS verwendet. Beispiel: /etc/ssl/certs/mssql.pem Das mssql-Konto muss auf die Zertifikatdatei zugreifen können. Microsoft empfiehlt, den Zugriff auf die Datei mithilfe von chown mssql:mssql <file>; chmod 400 <file> einzuschränken.
network.tlskey Der absolute Pfad zur Datei mit dem privaten Schlüssel, die SQL Server für TLS verwendet. Beispiel: /etc/ssl/private/mssql.key Das mssql-Konto muss auf die Zertifikatdatei zugreifen können. Microsoft empfiehlt, den Zugriff auf die Datei mithilfe von chown mssql:mssql <file>; chmod 400 <file> einzuschränken.
network.tlsprotocols Eine durch Trennzeichen getrennte Liste mit TLS-Protokollen, die von SQL Server zugelassen werden. SQL Server versucht immer, das sicherste Protokoll zu verwenden. Wenn ein Client keines der zulässigen Protokolle unterstützt, lehnt SQL Server den Verbindungsversuch ab. Aus Kompatibilitätsgründen sind alle unterstützten Protokollversionen (1.2, 1.1, 1.0) standardmäßig zulässig. Wenn die Clients TLS 1.2 unterstützen, empfiehlt Microsoft, nur diese Version zuzulassen.
network.tlsciphers Mit dieser Einstellung können Sie festlegen, welche Verschlüsselungsverfahren von SQL Server für TLS zugelassen werden. Das Format für diese Zeichenfolge muss dem der Liste der Verschlüsselungsverfahren für OpenSSL entsprechen. In der Regel müssen Sie diese Option nicht ändern.
Die folgenden Verschlüsselungsverfahren sind standardmäßig zulässig:
ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES128-SHA256:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES256-SHA:ECDHE-ECDSA-AES128-SHA:ECDHE-RSA-AES256-SHA:ECDHE-RSA-AES128-SHA:AES256-GCM-SHA384:AES128-GCM-SHA256:AES256-SHA256:AES128-SHA256:AES256-SHA:AES128-SHA
network.kerberoskeytabfile Pfad zur Kerberos-Schlüsseltabellendatei

Ein Beispiel für die Verwendung der TLS-Einstellungen finden Sie unter Verschlüsseln von SQL Server für Linux-Verbindungen.

Netzwerkeinstellungen

Siehe Tutorial: Verwenden der Active Directory-Authentifizierung mit SQL Server für Linux, um umfassende Informationen zur Verwendung der AD-Authentifizierung mit SQL Server für Linux zu erhalten.

Die folgenden Optionen sind zusätzliche Netzwerkeinstellungen, die mit mssql-conf konfiguriert werden können.

Option Beschreibung
network.disablesssd Hiermit wird die Abfrage von SSSD nach AD-Kontoinformationen deaktiviert, und es werden standardmäßig LDAP-Aufrufe verwendet. Die Werte können true oder false lauten.
network.enablekdcfromkrb5conf Hiermit wird die Suche nach KDC-Informationen in „krb5.conf“ aktiviert. Die Werte können true oder false lauten.
network.forcesecureldap Hiermit wird LDAPS zum Kontaktieren des Domänencontrollers erzwungen. Die Werte können true oder false lauten.
network.ipaddress Die IP-Adresse für eingehende Verbindungen.
network.kerberoscredupdatefrequency Die Zeit in Sekunden zwischen Überprüfungen auf Kerberos-Anmeldeinformationen, die aktualisiert werden müssen. Der Wert ist eine ganze Zahl.
network.privilegedadaccount Privilegierter AD-Benutzer zur Verwendung für die AD-Authentifizierung. Der Wert lautet <username>. Weitere Informationen finden Sie im Tutorial: Use Active Directory authentication with SQL Server on Linux (Tutorial: Verwenden der Azure Active Directory-Authentifizierung mit SQL Server unter Linux)
uncmapping Ordnet den UNC-Pfad einem lokalen Pfad zu. Beispiel: sudo /opt/mssql/bin/mssql-conf set uncmapping //servername/sharename /tmp/folder.

Aktivieren/Deaktivieren von Ablaufverfolgungsflags

Mit der Option traceflag können Sie Ablaufverfolgungsflags für den Start des SQL Server-Diensts aktivieren oder deaktivieren. Verwenden Sie die folgenden Befehle, um ein Ablaufverfolgungsflag zu aktivieren bzw. zu deaktivieren:

  1. Aktivieren Sie ein Ablaufverfolgungsflag mithilfe des folgenden Befehls. Beispiel für Ablaufverfolgungskennzeichnung 1234:

    sudo /opt/mssql/bin/mssql-conf traceflag 1234 on
    
  2. Sie können mehrere Ablaufverfolgungsflags aktivieren, indem Sie sie separat angeben:

    sudo /opt/mssql/bin/mssql-conf traceflag 2345 3456 on
    
  3. Auf ähnliche Weise können Sie aktivierte Ablaufverfolgungsflags deaktivieren, indem Sie sie angeben und den Parameter off ergänzen:

    sudo /opt/mssql/bin/mssql-conf traceflag 1234 2345 3456 off
    
  4. Starten Sie den SQL Server-Dienst neu, damit die Änderungen übernommen werden:

    sudo systemctl restart mssql-server
    

Löschen einer Einstellung

Sie können eine Einstellung löschen, die Sie mit mssql-conf set vorgenommen haben. Rufen Sie dazu mssql-conf mit der unset-Option und dem Namen der Einstellung auf. Dadurch wird die Einstellung auf den Standardwert zurückgesetzt.

  1. Im folgenden Beispiel wird der Wert der Option network.tcpport gelöscht.

    sudo /opt/mssql/bin/mssql-conf unset network.tcpport
    
  2. Starten Sie den SQL Server-Dienst neu.

    sudo systemctl restart mssql-server
    

Anzeigen der aktuellen Einstellungen

Sie können sich alle vorgenommen Einstellungen anzeigen lassen. Führen Sie dazu den folgenden Befehl aus, um die Inhalte der Datei mssql.conf auszugeben:

sudo cat /var/opt/mssql/mssql.conf

Für alle in dieser Datei nicht aufgeführten Einstellungen werden die Standardwerte verwendet. Der nächste Abschnitt enthält eine mssql.conf-Beispieldatei.

Anzeigen verschiedener Optionen

Führen Sie den help-Befehl aus, um verschiedene Optionen anzuzeigen, die mithilfe des mssql-conf-Hilfsprogramms konfiguriert werden können:

sudo /opt/mssql/bin/mssql-conf --help

Die Ergebnisse bieten Ihnen verschiedene Konfigurationsoptionen und eine kurze Beschreibung für jede der Einstellungen.

mssql.conf-Format

Die folgende /var/opt/mssql/mssql.conf-Datei enthält für jede Einstellung ein Beispiel. Sie können dieses Format verwenden, um bei Bedarf Änderungen an der Datei mssql.conf manuell vorzunehmen. Wenn Sie so vorgehen, müssen Sie SQL Server neu starten, damit die Änderungen übernommen werden. Wenn Sie die Datei mssql.conf mit Docker verwenden möchten, muss Docker die Daten dauerhaft speichern. Fügen Sie dazu zuerst Ihrem Hostverzeichnis eine vollständige mssql.conf-Datei hinzu, und führen Sie dann den Container aus. Ein Beispiel hierfür finden Sie unter Kundenfeedback.

[EULA]
accepteula = Y

[coredump]
captureminiandfull = true
coredumptype = full

[filelocation]
defaultbackupdir = /var/opt/mssql/data/
defaultdatadir = /var/opt/mssql/data/
defaultdumpdir = /var/opt/mssql/data/
defaultlogdir = /var/opt/mssql/data/

[hadr]
hadrenabled = 0

[language]
lcid = 1033

[memory]
memorylimitmb = 4096

[network]
forceencryption = 0
ipaddress = 10.192.0.0
kerberoskeytabfile = /var/opt/mssql/secrets/mssql.keytab
tcpport = 1401
tlscert = /etc/ssl/certs/mssql.pem
tlsciphers = ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES128-SHA256:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES256-SHA:ECDHE-ECDSA-AES128-SHA:ECDHE-RSA-AES256-SHA:ECDHE-RSA-AES128-SHA:AES256-GCM-SHA384:AES128-GCM-SHA256:AES256-SHA256:AES128-SHA256:AES256-SHA:AES128-SHA
tlskey = /etc/ssl/private/mssql.key
tlsprotocols = 1.2,1.1,1.0

[sqlagent]
databasemailprofile = default
errorlogfile = /var/opt/mssql/log/sqlagentlog.log
errorlogginglevel = 7

[telemetry]
customerfeedback = true
userrequestedlocalauditdirectory = /tmp/audit

[traceflag]
traceflag0 = 1204
traceflag1 = 2345
traceflag = 3456
[EULA]
accepteula = Y
accepteulaml = Y

[coredump]
captureminiandfull = true
coredumptype = full

[distributedtransaction]
servertcpport = 51999

[filelocation]
defaultbackupdir = /var/opt/mssql/data/
defaultdatadir = /var/opt/mssql/data/
defaultdumpdir = /var/opt/mssql/data/
defaultlogdir = /var/opt/mssql/data/

[hadr]
hadrenabled = 0

[language]
lcid = 1033

[memory]
memorylimitmb = 4096

[network]
forceencryption = 0
ipaddress = 10.192.0.0
kerberoskeytabfile = /var/opt/mssql/secrets/mssql.keytab
rpcport = 13500
tcpport = 1401
tlscert = /etc/ssl/certs/mssql.pem
tlsciphers = ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES128-SHA256:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES256-SHA:ECDHE-ECDSA-AES128-SHA:ECDHE-RSA-AES256-SHA:ECDHE-RSA-AES128-SHA:AES256-GCM-SHA384:AES128-GCM-SHA256:AES256-SHA256:AES128-SHA256:AES256-SHA:AES128-SHA
tlskey = /etc/ssl/private/mssql.key
tlsprotocols = 1.2,1.1,1.0

[sqlagent]
databasemailprofile = default
errorlogfile = /var/opt/mssql/log/sqlagentlog.log
errorlogginglevel = 7

[telemetry]
customerfeedback = true
userrequestedlocalauditdirectory = /tmp/audit

[traceflag]
traceflag0 = 1204
traceflag1 = 2345
traceflag = 3456

Nächste Schritte

Wenn Sie einige dieser Konfigurationsänderungen mit Umgebungsvariablen vornehmen möchten, finden Sie unter Konfigurieren von SQL Server-Einstellungen mit Umgebungsvariablen weitere Informationen.

Weitere Verwaltungstools und Szenarios finden Sie unter Verwalten von SQL Server für Linux.