Konfigurieren der Sammlung von Nutzungs- und Diagnosedaten für SQL Server unter Linux

Gilt für:SQL Server unter Linux

Microsoft erfasst standardmäßig Informationen darüber, wie Kunden SQL Server verwenden. Dies bedeutet, dass SQL Server Informationen zur Installationserfahrung, Nutzung und Leistung sammelt. Diese Informationen helfen Microsoft dabei, das Produkt zu verbessern, um die Bedürfnisse der Kunden besser zu erfüllen. Microsoft erfasst z.B. Informationen zu Fehlercodes von Kunden, sodass wir damit verknüpfte Probleme beheben, die Dokumentation zu SQL Server verbessern und bestimmen können, ob wir dem Produkt weitere Funktionen hinzufügen müssen, um die Benutzererfahrung zu optimieren.

Dieses Dokument enthält ausführliche Informationen dazu, welche Arten von Informationen gesammelt werden, und wie SQL Server für Linux konfiguriert wird, um diese gesammelten Informationen an Microsoft zu senden. SQL Server enthält eine Datenschutzerklärung, in der erläutert wird, welche Informationen von Benutzern gesammelt werden und welche nicht. Weitere Informationen finden Sie in den Datenschutzbestimmungen.

Microsoft sendet nicht die folgenden Informationen mit diesem Mechanismus:

  • Werte aus Benutzertabellen
  • Jegliche Anmeldedaten oder andere Authentifizierungsinformationen
  • Personenbezogene Daten

SQL Server sammelt und sendet immer Informationen über die Installationserfahrungen während des Setupprozesses, damit wir Installationsprobleme, die Kund*innen erfahren, schnell erkennen und beheben können. SQL Server können nicht so konfiguriert werden, dass Informationen (pro Serverinstanz) über mssql-conf an Microsoft gesendet werden. mssql-conf ist ein Konfigurationsskript, das mit SQL Server für Red Hat Enterprise Linux, SUSE Linux Enterprise Server und Ubuntu installiert wird.

Hinweis

Sie können das Senden von Informationen an Microsoft nur in bezahlten Versionen von SQL Server deaktivieren.

Deaktivieren der Nutzungs- und Diagnosedatensammlung

Mit dieser Option können Sie ändern, ob SQL Server die Nutzungs- und Diagnosedatensammlung an Microsoft sendet. Standardmäßig ist dieser Wert auf „true“ festgelegt. Führen Sie die folgenden Befehle aus, um den Wert zu ändern:

Wichtig

Sie können die Nutzungs- und Diagnosedatensammlung für kostenlose Editionen von SQL Server, Express und Developer nicht deaktivieren.

Unter Red Hat, SUSE und Ubuntu

  1. Führen Sie das mssql-conf Script als Root mit dem set Befehl für telemetry.customerfeedback aus. Im folgenden Beispiel wird die Nutzungs- und Diagnosedatensammlung durch 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
    

In einem Linux-Container

Um die Nutzungs- und Diagnosedatensammlung in einem Linux-Container zu deaktivieren, muss der Container Ihre Daten persistent speichern.

  1. Fügen Sie eine mssql.conf-Datei mit den Zeilen [telemetry] und customerfeedback = false im Hostverzeichnis hinzu:

    echo '[telemetry]' >> <host directory>/mssql.conf
    
    echo 'customerfeedback = false' >> <host directory>/mssql.conf
    
  2. Führen Sie das Container-Image aus:

    Wichtig

    Die Umgebungsvariable SA_PASSWORD ist veraltet. Verwenden Sie stattdessen MSSQL_SA_PASSWORD.

    docker run -e 'ACCEPT_EULA=Y' -e 'MSSQL_SA_PASSWORD=<password>' -p 1433:1433 -v <host directory>:/var/opt/mssql -d mcr.microsoft.com/mssql/server:2017-latest
    
    docker run -e "ACCEPT_EULA=Y" -e "MSSQL_SA_PASSWORD=<password>" -p 1433:1433 -v <host directory>:/var/opt/mssql -d mcr.microsoft.com/mssql/server:2017-latest
    
  1. Fügen Sie eine mssql.conf-Datei mit den Zeilen [telemetry] und customerfeedback = false im Hostverzeichnis hinzu:

    echo '[telemetry]' >> <host directory>/mssql.conf
    
    echo 'customerfeedback = false' >> <host directory>/mssql.conf
    
  2. Führen Sie das Container-Image aus.

    Wichtig

    Die Umgebungsvariable SA_PASSWORD ist veraltet. Verwenden Sie stattdessen MSSQL_SA_PASSWORD.

    docker run -e 'ACCEPT_EULA=Y' -e 'MSSQL_SA_PASSWORD=<password>' -p 1433:1433 -v <host directory>:/var/opt/mssql -d mcr.microsoft.com/mssql/server:2019-latest
    
    docker run -e "ACCEPT_EULA=Y" -e "MSSQL_SA_PASSWORD=<password>" -p 1433:1433 -v <host directory>:/var/opt/mssql -d mcr.microsoft.com/mssql/server:2019-latest
    
  1. Fügen Sie eine mssql.conf-Datei mit den Zeilen [telemetry] und customerfeedback = false im Hostverzeichnis hinzu:

    echo '[telemetry]' >> <host directory>/mssql.conf
    
    echo 'customerfeedback = false' >> <host directory>/mssql.conf
    
  2. Ausführen des Containerimages:

    Wichtig

    Die Umgebungsvariable SA_PASSWORD ist veraltet. Verwenden Sie stattdessen MSSQL_SA_PASSWORD.

    docker run -e 'ACCEPT_EULA=Y' -e 'MSSQL_SA_PASSWORD=<password>' -p 1433:1433 -v <host directory>:/var/opt/mssql -d mcr.microsoft.com/mssql/server:2022-latest
    
    docker run -e "ACCEPT_EULA=Y" -e "MSSQL_SA_PASSWORD=<password>" -p 1433:1433 -v <host directory>:/var/opt/mssql -d mcr.microsoft.com/mssql/server:2022-latest
    

Achtung

Ihr Kennwort sollte der standardmäßigen Kennwortrichtlinie von SQL Server folgen. Ein Standardkennwort enthält mindestens acht Zeichen, die aus drei der folgenden vier Kategorien stammen müssen: Großbuchstaben, Kleinbuchstaben, Grundzahlen (0–9) und Symbole. Kennwörter können bis zu 128 Zeichen lang sein. Verwenden Sie möglichst lange und komplexe Kennwörter.

Lokales Audit für Nutzungs- und Diagnosedatensammlung in SQL Server auf Linux

SQL Server enthält internetfähige Funktionen, die Daten über Ihren Computer oder Ihr Gerät („Standardcomputerinformationen“) erfassen und an Microsoft senden können. Die Komponente „Lokale Überwachung“ der SQL Server-Nutzungs- und Diagnosedatensammlung kann die vom Dienst erfassten Daten, die die an Microsoft zu sendenden Daten (Protokolle) darstellen, in einen bestimmten Ordner schreiben. Der Zweck der lokalen Überwachung besteht darin, dass es Benutzern gestattet wird, alle Daten hinsichtlich Zustimmung, behördlicher Bestimmungen oder aus Datenschutzgründen anzuzeigen, die Microsoft mithilfe dieses Features erfasst.

In SQL Server für Linux kann die lokale Überwachung auf Instanzebene für die SQL Server-Datenbank-Engine konfiguriert werden. Andere SQL Server-Komponenten und SQL Server-Tools besitzen keine Funktion zur lokalen Überwachung für die Nutzungs- und Diagnosedatensammlung.

Aktivieren der lokalen Überwachung

Mit dieser Option wird die lokale Überwachung 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 lokale Auditprotokolle. Im folgenden Beispiel wird das Verzeichnis /tmp/audit erstellt:

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

    sudo chown mssql /tmp/audit
    sudo chgrp mssql /tmp/audit
    
  3. Führen Sie das mssql-conf Script als Root mit dem set-Befehl 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
    

In einem Linux-Container

Um Local Audit in einem Linux-Container zu aktivieren, muss der Container Ihre Daten persistieren.

  1. Das Zielverzeichnis für neue Protokolle der lokalen Überwachung befindet sich im Container. Erstellen Sie ein Zielverzeichnis für neue Protokolle der lokalen Überwachung im Hostverzeichnis auf Ihrem Computer. Im folgenden Beispiel wird ein neues Verzeichnis /audit angelegt:

    sudo mkdir <host directory>/audit
    
  2. Fügen Sie eine mssql.conf-Datei mit den Zeilen [telemetry] und userrequestedlocalauditdirectory = <host directory>/audit im Hostverzeichnis hinzu:

    echo '[telemetry]' >> <host directory>/mssql.conf
    
    echo 'userrequestedlocalauditdirectory = <host directory>/audit' >> <host directory>/mssql.conf
    
  3. Führen Sie das Container-Image aus:

    docker run -e 'ACCEPT_EULA=Y' -e 'MSSQL_SA_PASSWORD=<password>' -p 1433:1433 -v <host directory>:/var/opt/mssql -d mcr.microsoft.com/mssql/server:2017-latest
    
    docker run -e "ACCEPT_EULA=Y" -e "MSSQL_SA_PASSWORD=<password>" -p 1433:1433 -v <host directory>:/var/opt/mssql -d mcr.microsoft.com/mssql/server:2017-latest
    
  1. Das Zielverzeichnis für neue Protokolle der lokalen Überwachung befindet sich im Container. Erstellen Sie ein Zielverzeichnis für neue Protokolle der lokalen Überwachung im Hostverzeichnis auf Ihrem Computer. Das folgende Beispiel erstellt ein neues /audit-Verzeichnis:

    sudo mkdir <host directory>/audit
    
  2. Fügen Sie eine mssql.conf-Datei mit den Zeilen [telemetry] und userrequestedlocalauditdirectory = <host directory>/audit im Hostverzeichnis hinzu:

    echo '[telemetry]' >> <host directory>/mssql.conf
    
    echo 'userrequestedlocalauditdirectory = <host directory>/audit' >> <host directory>/mssql.conf
    
  3. Führen Sie das Container-Image aus:

    docker run -e 'ACCEPT_EULA=Y' -e 'MSSQL_SA_PASSWORD=<password>' -p 1433:1433 -v <host directory>:/var/opt/mssql -d mcr.microsoft.com/mssql/server:2019-latest
    
    docker run -e "ACCEPT_EULA=Y" -e "MSSQL_SA_PASSWORD=<password>" -p 1433:1433 -v <host directory>:/var/opt/mssql -d mcr.microsoft.com/mssql/server:2019-latest
    
  1. Das Zielverzeichnis für neue Protokolle der lokalen Überwachung befindet sich im Container. Erstellen Sie ein Zielverzeichnis für neue Protokolle der lokalen Überwachung im Hostverzeichnis auf Ihrem Computer. Im folgenden Beispiel wird ein neues Verzeichnis /audit erstellt:

    sudo mkdir <host directory>/audit
    
  2. Fügen Sie eine mssql.conf-Datei mit den Zeilen [telemetry] und userrequestedlocalauditdirectory = <host directory>/audit im Hostverzeichnis hinzu:

    echo '[telemetry]' >> <host directory>/mssql.conf
    
    echo 'userrequestedlocalauditdirectory = <host directory>/audit' >> <host directory>/mssql.conf
    
  3. Ausführen des Containerimages:

    docker run -e 'ACCEPT_EULA=Y' -e 'MSSQL_SA_PASSWORD=<password>' -p 1433:1433 -v <host directory>:/var/opt/mssql -d mcr.microsoft.com/mssql/server:2022-latest
    
    docker run -e "ACCEPT_EULA=Y" -e "MSSQL_SA_PASSWORD=<password>" -p 1433:1433 -v <host directory>:/var/opt/mssql -d mcr.microsoft.com/mssql/server:2022-latest
    
  1. Das Zielverzeichnis für neue Protokolle der lokalen Überwachung befindet sich im Container. Erstellen Sie ein Zielverzeichnis für neue Protokolle der lokalen Überwachung im Hostverzeichnis auf Ihrem Computer. Im folgenden Beispiel wird ein neues Verzeichnis /audit erstellt:

    sudo mkdir <host directory>/audit
    
  2. Fügen Sie eine mssql.conf-Datei mit den Zeilen [telemetry] und userrequestedlocalauditdirectory = <host directory>/audit im Hostverzeichnis hinzu:

    echo '[telemetry]' >> <host directory>/mssql.conf
    
    echo 'userrequestedlocalauditdirectory = <host directory>/audit' >> <host directory>/mssql.conf
    
  3. Führen Sie das Container-Image aus:

    docker run -e 'ACCEPT_EULA=Y' -e 'MSSQL_SA_PASSWORD=<password>' -p 1433:1433 -v <host directory>:/var/opt/mssql -d mcr.microsoft.com/mssql/server:2025-latest
    
    docker run -e "ACCEPT_EULA=Y" -e "MSSQL_SA_PASSWORD=<password>" -p 1433:1433 -v <host directory>:/var/opt/mssql -d mcr.microsoft.com/mssql/server:2025-latest
    

Achtung

Ihr Kennwort sollte der standardmäßigen Kennwortrichtlinie von SQL Server folgen. Ein Standardkennwort enthält mindestens acht Zeichen, die aus drei der folgenden vier Kategorien stammen müssen: Großbuchstaben, Kleinbuchstaben, Grundzahlen (0–9) und Symbole. Kennwörter können bis zu 128 Zeichen lang sein. Verwenden Sie möglichst lange und komplexe Kennwörter.