Configurare la raccolta di dati di diagnostica e di utilizzo per SQL Server in Linux
Si applica a: SQL Server - Linux
Per impostazione predefinita, Microsoft SQL Server raccoglie informazioni su come i clienti usano l'applicazione. In particolare, SQL Server raccoglie informazioni sull'esperienza di installazione, l'utilizzo e le prestazioni. Queste informazioni consentono a Microsoft di migliorare il prodotto per meglio soddisfare le esigenze dei clienti. Ad esempio, Microsoft raccoglie informazioni sui tipi di codici di errore riscontrati dai clienti in modo da poter correggere i bug correlati, migliorare la documentazione su come usare SQL Server e determinare se occorre aggiungere funzionalità al prodotto per offrire un'esperienza migliore ai clienti.
Questo documento fornisce dettagli sul tipo di informazioni raccolte e su come configurare SQL Server in Linux per inviare le informazioni raccolte a Microsoft. SQL Server include un'informativa sulla privacy che spiega quali informazioni degli utenti vengono raccolte e quali non vengono raccolte. Per altre informazioni, vedere l'informativa sulla privacy.
In particolare, Microsoft non invia alcuna informazione dei tipi seguenti tramite questo meccanismo:
- Qualsiasi valore all'interno delle tabelle utente
- Credenziali di accesso o altre informazioni di autenticazione
- Dati personali
SQL Server raccoglie e invia sempre informazioni sull'esperienza di installazione dal processo di installazione, in modo che sia possibile individuare e correggere eventuali problemi di installazione riscontrati dai clienti. SQL Server può essere configurato (per ogni singola istanza) per non inviare informazioni a Microsoft tramite mssql-conf. mssql-conf è uno script di configurazione che viene installato con SQL Server per Red Hat Enterprise Linux, SUSE Linux Enterprise Server e Ubuntu.
Nota
È possibile disabilitare l'invio di informazioni a Microsoft solo nelle versioni a pagamento di SQL Server.
Disabilitare la raccolta di dati di diagnostica e utilizzo
Questa opzione consente di modificare l'impostazione che determina se SQL Server deve inviare la raccolta di dati di utilizzo e diagnostica a Microsoft o meno. Per impostazione predefinita, questo valore è impostato su true. Per modificare il valore, eseguire i comandi seguenti:
Importante
Non è possibile disattivare la raccolta di dati di utilizzo e diagnostica per le edizioni gratuite di SQL Server, Express e Developer.
In Red Hat, SUSE e Ubuntu
Eseguire lo script mssql-conf come root con il comando
set
pertelemetry.customerfeedback
. L'esempio seguente disattiva la raccolta di dati di utilizzo e diagnostica specificandofalse
.sudo /opt/mssql/bin/mssql-conf set telemetry.customerfeedback false
Riavviare il servizio SQL Server:
sudo systemctl restart mssql-server
In un contenitore Linux
Per disabilitare la raccolta di dati di utilizzo e diagnostica in contenitore Linux, è necessario che il contenitore salvi in modo permanente i dati.
Aggiungere un file
mssql.conf
con le righe[telemetry]
ecustomerfeedback = false
nella directory host:echo '[telemetry]' >> <host directory>/mssql.conf
echo 'customerfeedback = false' >> <host directory>/mssql.conf
Eseguire l'immagine del contenitore.
Importante
La variabile di ambiente
SA_PASSWORD
è deprecata. Utilizzare inveceMSSQL_SA_PASSWORD
.docker run -e 'ACCEPT_EULA=Y' -e 'MSSQL_SA_PASSWORD=<YourStrong!Passw0rd>' -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=<YourStrong!Passw0rd>" -p 1433:1433 -v <host directory>:/var/opt/mssql -d mcr.microsoft.com/mssql/server:2017-latest
Aggiungere un file
mssql.conf
con le righe[telemetry]
ecustomerfeedback = false
nella directory host:echo '[telemetry]' >> <host directory>/mssql.conf
echo 'customerfeedback = false' >> <host directory>/mssql.conf
Eseguire l'immagine del contenitore.
Importante
La variabile di ambiente
SA_PASSWORD
è deprecata. Utilizzare inveceMSSQL_SA_PASSWORD
.docker run -e 'ACCEPT_EULA=Y' -e 'MSSQL_SA_PASSWORD=<YourStrong!Passw0rd>' -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=<YourStrong!Passw0rd>" -p 1433:1433 -v <host directory>:/var/opt/mssql -d mcr.microsoft.com/mssql/server:2019-latest
Aggiungere un file
mssql.conf
con le righe[telemetry]
ecustomerfeedback = false
nella directory host:echo '[telemetry]' >> <host directory>/mssql.conf
echo 'customerfeedback = false' >> <host directory>/mssql.conf
Eseguire l'immagine del contenitore.
Importante
La variabile di ambiente
SA_PASSWORD
è deprecata. Utilizzare inveceMSSQL_SA_PASSWORD
.docker run -e 'ACCEPT_EULA=Y' -e 'MSSQL_SA_PASSWORD=<YourStrong!Passw0rd>' -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=<YourStrong!Passw0rd>" -p 1433:1433 -v <host directory>:/var/opt/mssql -d mcr.microsoft.com/mssql/server:2022-latest
Controllo locale per la raccolta di dati di diagnostica e utilizzo di SQL Server in Linux
In SQL Server sono disponibili funzionalità abilitate per Internet che sono in grado di raccogliere e inviare a Microsoft dati relativi al computer o al dispositivo ("dati standard sul computer"). Il componente per il controllo locale della raccolta di dati di diagnostica e utilizzo di SQL Server può scrivere i dati raccolti dal servizio in una specifica cartella, che rappresenta i dati (log) da inviare a Microsoft. Lo scopo del controllo locale è quello di consentire ai clienti di visualizzare tutti i dati che Microsoft raccoglie con questa funzionalità, per motivi di conformità alle normative o rispetto della privacy.
In SQL Server in Linux il controllo locale è configurabile a livello di istanza per il motore di database di SQL Server. Gli altri componenti di SQL Server e strumenti di SQL Server non hanno funzionalità di controllo locale per la raccolta di dati di utilizzo e diagnostica.
Abilitare il controllo locale
Questa opzione abilita il controllo locale e consente di impostare la directory in cui vengono creati i log di controllo locale.
Creare una directory di destinazione per i nuovi log di controllo locale. L'esempio seguente crea una nuova directory
/tmp/audit
:sudo mkdir /tmp/audit
Sostituire il proprietario e il gruppo della directory con l'utente
mssql
:sudo chown mssql /tmp/audit sudo chgrp mssql /tmp/audit
Eseguire lo script mssql-conf come root con il comando
set
pertelemetry.userrequestedlocalauditdirectory
:sudo /opt/mssql/bin/mssql-conf set telemetry.userrequestedlocalauditdirectory /tmp/audit
Riavviare il servizio SQL Server:
sudo systemctl restart mssql-server
In un contenitore Linux
Per abilitare il controllo locale in un contenitore Linux, è necessario che il contenitore salvi in modo permanente i dati.
La directory di destinazione per i nuovi log di controllo locale sarà nel contenitore. Creare una directory di destinazione per i nuovi log di controllo locale nella directory host del computer. L'esempio seguente crea una nuova directory
/audit
:sudo mkdir <host directory>/audit
Aggiungere un file
mssql.conf
con le righe[telemetry]
euserrequestedlocalauditdirectory = <host directory>/audit
nella directory host:echo '[telemetry]' >> <host directory>/mssql.conf
echo 'userrequestedlocalauditdirectory = <host directory>/audit' >> <host directory>/mssql.conf
Eseguire l'immagine del contenitore.
docker run -e 'ACCEPT_EULA=Y' -e 'MSSQL_SA_PASSWORD=<YourStrong!Passw0rd>' -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=<YourStrong!Passw0rd>" -p 1433:1433 -v <host directory>:/var/opt/mssql -d mcr.microsoft.com/mssql/server:2017-latest
La directory di destinazione per i nuovi log di controllo locale sarà nel contenitore. Creare una directory di destinazione per i nuovi log di controllo locale nella directory host del computer. L'esempio seguente crea una nuova directory
/audit
:sudo mkdir <host directory>/audit
Aggiungere un file
mssql.conf
con le righe[telemetry]
euserrequestedlocalauditdirectory = <host directory>/audit
nella directory host:echo '[telemetry]' >> <host directory>/mssql.conf
echo 'userrequestedlocalauditdirectory = <host directory>/audit' >> <host directory>/mssql.conf
Eseguire l'immagine del contenitore
docker run -e 'ACCEPT_EULA=Y' -e 'MSSQL_SA_PASSWORD=<YourStrong!Passw0rd>' -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=<YourStrong!Passw0rd>" -p 1433:1433 -v <host directory>:/var/opt/mssql -d mcr.microsoft.com/mssql/server:2019-latest
La directory di destinazione per i nuovi log di controllo locale sarà nel contenitore. Creare una directory di destinazione per i nuovi log di controllo locale nella directory host del computer. L'esempio seguente crea una nuova directory
/audit
:sudo mkdir <host directory>/audit
Aggiungere un file
mssql.conf
con le righe[telemetry]
euserrequestedlocalauditdirectory = <host directory>/audit
nella directory host:echo '[telemetry]' >> <host directory>/mssql.conf
echo 'userrequestedlocalauditdirectory = <host directory>/audit' >> <host directory>/mssql.conf
Eseguire l'immagine del contenitore
docker run -e 'ACCEPT_EULA=Y' -e 'MSSQL_SA_PASSWORD=<YourStrong!Passw0rd>' -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=<YourStrong!Passw0rd>" -p 1433:1433 -v <host directory>:/var/opt/mssql -d mcr.microsoft.com/mssql/server:2022-latest