Sintomi
In SQL Server 2019 su Linux gli script di processo via satellite esterni come R, Python sono non è possibile accedere alle directory esterne alla directory di lavoro.
Risoluzione
Questo problema è stato risolto con l'aggiornamento cumulativo seguente per SQL Server:
Informazioni sugli aggiornamenti cumulativi per SQL Server:
Ogni nuovo aggiornamento cumulativo per SQL Server contiene tutti gli hotfix e tutti gli aggiornamenti della sicurezza inclusi nell'aggiornamento cumulativo precedente. Vedere gli ultimi aggiornamenti cumulativi per SQL Server:
Ulteriori informazioni
È possibile personalizzare le directory a cui possono accedere i processi esterni uso dello strumento MSSQL-conf per impostare o annullare l'impostazione "datadirectories" in sezione estensibilità del file di configurazione di /var/opt/MSSQL/MSSQL.conf .
Il il valore dell'impostazione è un elenco di directory separate da due punti che verrà esposto agli script satellitari. Microsoft SQL Server Launchpad daemon deve essere riavviato quando si imposta o si annulla questa impostazione.
I processi satellitari vengono eseguiti come mssql_satellite utente speciale, in modo che erediti le stesse autorizzazioni di lettura/scrittura/esecuzione per le directory specificate in questa impostazione, come indicato in questo utente speciale.
Esempio:
/bin/bash /opt/MSSQL/bin/MSSQL-conf imposta Extensibility. datadirectories "/opt/mssql/bin:/home/user/rscripts"
SQL Il demone di Launchpad di estensibilità del server deve essere riavviato per poterlo applicare Questa impostazione. Eseguire "systemctl riavvia MSSQL-launchpadd. Service".
Contenuto di/var/opt/MSSQL/MSSQL.conf
Extensibility
datadirectories =/opt/MSSQL/bin:/var
/bin/bash /opt/MSSQL/bin/MSSQL-conf Annulla l'estensibilità. datadirectories
SQL Il demone di Launchpad di estensibilità del server deve essere riavviato per poterlo applicare Questa impostazione. Eseguire
'systemctl riavviare MSSQL-launchpadd. Service '.
Contenuto di/var/opt/MSSQL/MSSQL.conf
Extensibility
Stato
Questo è per impostazione predefinita progettato come in modo che i processi esterni non possano accedere in modo casuale alle directory di sistema.
Riferimenti
Informazioni sulla terminologia utilizzata da Microsoft per descrivere gli aggiornamenti software.