Note sulla versione di SQL Server 2019 in Linux

Si applica a: SQL Server 2019 (15.x) - Linux

Le note sulla versione seguenti si applicano a SQL Server 2019 (15.x) in esecuzione in Linux. Questo articolo è suddiviso in sezioni corrispondenti a ogni versione. Alla fine dell'articolo sono elencati i problemi noti e la supportabilità dettagliati. Ogni versione include un collegamento a un articolo di supporto che descrive le modifiche e i collegamenti ai download del pacchetto Linux.

Queste note sulla versione sono specifiche per le versioni SQL Server 2019 (15.x). Per le note sulla versione di altre edizioni, vedere gli articoli seguenti:

Piattaforme supportate

Piattaforma File system Guida all'installazione Recupero
Red Hat Enterprise Linux 7.7 - 7.9 o 8.0 - 8.6 Server XFS o EXT4 Guida all'installazione Scaricare RHEL 8.0
SUSE Enterprise Linux Server v12 (SP3 - SP5) o v15 (SP1 - SP3) XFS o EXT4 Guida all'installazione Scaricare SLES v15
Ubuntu 16.04 LTS 1, 18.04 LTS, 20.04 LTS XFS o EXT4 Guida all'installazione Scaricare Ubuntu 20.04
Docker Engine 1.8+ in Windows, Mac o Linux N/D Guida all'installazione Scaricare Docker

1 Il supporto per SQL Server in Ubuntu 16.04 è limitato. Alla fine di aprile 2021, Ubuntu 16.04 è passato dalla finestra di manutenzione standard di cinque anni per le versioni con supporto a lungo termine (LTS) al supporto Extended Security Maintenance (ESM). Per altre informazioni, vedere Transizioni dal supporto LTS di Ubuntu 16.04 al supporto ESM (Extended Security Maintenance) | Ubuntu.

Suggerimento

Per altre informazioni, vedere i requisiti di sistema per SQL Server in Linux. Per i criteri di supporto tecnico più recenti per SQL Server, vedere Criteri di supporto tecnico per Microsoft SQL Server.

Strumenti

La maggior parte degli strumenti client esistenti per SQL Server può essere facilmente usata per SQL Server in esecuzione in Linux. Per usare in modo efficiente alcuni strumenti in Linux, potrebbe essere richiesta una versione specifica. Per un elenco completo di strumenti di SQL Server, vedere Strumenti e utilità SQL per SQL Server.

Versioni più recenti per tutti i pacchetti

Questa sezione elenca le versioni più recenti di ogni pacchetto per distribuzione per SQL Server 2019. La tabella seguente illustra la versione più recente, ovvero CU 18. Per la cronologia completa delle versioni, vedere Cronologia delle versioni per SQL Server 2019.

Versione Versione Data Compilare articolo KB
SQL Server 2019 (15.x) CU 18 2022-09-28 15.0.4261.1 KB 5017593
Distribuzione Nome del pacchetto Versione pacchetto Scarica
Red Hat Enterprise Linux
RHEL 8 Motore di database 15.0.4261.1-2 Pacchetto RPM del motore di database
RHEL 8 Estendibilità 15.0.4261.1-2 Pacchetto RPM di estendibilità
RHEL 8 Ricerca full-text 15.0.4261.1-2 Pacchetto RPM di ricerca full-text
RHEL 8 Disponibilità elevata 15.0.4261.1-2 Pacchetto RPM a disponibilità elevata
RHEL 8 Estendibilità Java 15.0.4261.1-2 Pacchetto RPM di estendibilità Java
RHEL 8 PolyBase 15.0.4261.1-2 Pacchetto RPM PolyBase
RHEL 8 SSIS 15.0.4063.15-88 Pacchetto RPM SSIS
SUSE Linux Enterprise Server
SLES 15 Motore di database 15.0.4261.1-2 Pacchetto RPM del motore di database
SLES 15 Estendibilità 15.0.4261.1-2 Pacchetto RPM di estendibilità
SLES 15 Ricerca full-text 15.0.4261.1-2 Pacchetto RPM ricerca full-text
SLES 15 Disponibilità elevata 15.0.4261.1-2 Pacchetto RPM a disponibilità elevata
SLES 15 Estendibilità Java 15.0.4261.1-2 Pacchetto RPM di estendibilità Java
SLES 15 PolyBase 15.0.4261.1-2 Pacchetto RPM PolyBase
Ubuntu
Ubuntu 20.04 Motore di database 15.0.4261.1-2 Pacchetto Debian del motore di database
Ubuntu 20.04 Estendibilità 15.0.4261.1-2 Pacchetto Debian di estendibilità
Ubuntu 20.04 Ricerca full-text 15.0.4261.1-2 Pacchetto Debian ricerca full-text
Ubuntu 20.04 Disponibilità elevata 15.0.4261.1-2 Pacchetto Debian a disponibilità elevata
Ubuntu 20.04 Estendibilità Java 15.0.4261.1-2 Pacchetto Debian di estendibilità Java
Ubuntu 20.04 PolyBase 15.0.4261.1-2 Pacchetto Debian PolyBase
Ubuntu 18.04 SSIS 15.0.4153.1-89 Pacchetto Debian SSIS

Come installare gli aggiornamenti

Se è stato configurato il repository di aggiornamenti cumulativi (mssql-server-2019), quando si eseguono nuove installazioni si otterrà l'aggiornamento cumulativo più recente dei pacchetti di SQL Server. Se sono necessarie immagini del contenitore Docker, vedere le immagini ufficiali per Microsoft SQL Server in Linux per il motore Docker. Per altre informazioni sulla configurazione del repository, vedere Configurare i repository per SQL Server in Linux.

Se si aggiornano pacchetti di SQL Server esistenti, eseguire il comando di aggiornamento appropriato per ogni pacchetto per ottenere l'aggiornamento cumulativo più recente. Per istruzioni dettagliate sull'aggiornamento per ogni pacchetto, vedere le guide all'installazione seguenti:

Cronologia delle versioni

La tabella seguente elenca la cronologia delle versioni per SQL Server 2019 (15.x).

Versione Versione Data di rilascio
CU 18 15.0.4261.1 2022-09-28
CU 17 15.0.4249.2 2022-08-11
CU 16 GDR 15.0.4236.7 2022-06-14
CU 16 15.0.4223.1 2022-04-18
CU 15 15.0.4198.2 2022-01-27
CU 14 15.0.4188.2 2021-11-22
CU 13 15.0.4178.1 2021-10-05
CU 12 15.0.4153.1 2021-08-04
CU 11 15.0.4138.2 2021-06-10
CU 10 15.0.4123.1 2021-04-06
CU 9 15.0.4102.2 2021-02-10
CU 8 GDR 15.0.4083.2 2021-01-12
GDR 1 15.0.2080.9 2021-01-12
CU 8 15.0.4073.23 2020-10-07
CU 7 (rimosso) 15.0.4063.15 2020-09-02
CU 6 15.0.4053.23 2020-08-04
CU 5 15.0.4043.16 2020-06-22
CU 4 15.0.4033.1 2020-03-31
CU 3 15.0.4023.6 2020-03-12
CU 2 15.0.4013.40 2020-02-13
CU 1 15.0.4003.23 07 gennaio 2020
GA 15.0.2000.5 4 novembre 2019

Problemi noti

Le sezioni seguenti descrivono i problemi noti di SQL Server 2019 (15.x) in Linux.

Generale

  • La lunghezza del nome host in cui è installato SQL Server non deve superare i 15 caratteri.

    • Soluzione: sostituire il nome in /etc/hostname con un nome di 15 caratteri o meno.
  • Portando manualmente indietro l'ora di sistema, SQL Server smetterà di aggiornare l'ora del sistema interno di SQL Server.

    • Soluzione: riavviare SQL Server.
  • Sono supportate solo le installazioni a istanza singola.

    • Soluzione: Se si vuole avere più di un'istanza in un determinato host, è consigliabile usare le macchine virtuali o i contenitori Docker.
  • Gestione configurazione SQL Server non è in grado di connettersi a SQL Server in Linux.

  • La lingua predefinita dell'account di accesso sa è l'inglese.

    • Soluzione: Cambiare la lingua dell'account di accesso sa con l'istruzione ALTER LOGIN.
  • Il provider OLEDB registra l'avviso seguente: Failed to verify the Authenticode signature of 'C:\binn\msoledbsql.dll'. Signature verification of SQL Server DLLs will be skipped. Genuine copies of SQL Server are signed. Failure to verify the Authenticode signature might indicate that this is not an authentic release of SQL Server. Install a genuine copy of SQL Server or contact customer support.

    • Soluzione: Non è richiesta alcuna azione. Il provider OLEDB viene firmato con SHA256. Il motore di database di SQL Server non convalida correttamente il file .dll firmato.

Database

  • Non è possibile spostare il database master con l'utilità mssql-conf. Si possono invece spostare altri database di sistema con mssql-conf.

  • Quando si ripristina un database di cui è stato eseguito un backup in SQL Server in Windows, è necessario usare la clausola WITH MOVE nell'istruzione Transact-SQL.

  • Alcuni algoritmi (pacchetti di crittografia) per Transport Layer Security (TLS) non funzionano correttamente con SQL Server in Linux. Ne derivano errori di connessione quando si prova a connettersi a SQL Server, oltre a problemi a stabilire connessioni tra repliche nei gruppi di disponibilità elevata.

    • Soluzione: modificare lo script di configurazione mssql.conf per MSSQL in Linux per disabilitare i pacchetti di crittografia problematici, seguendo questa procedura:

      1. Aggiungere il codice seguente a /var/opt/mssql/mssql.conf.

        [network]
        tlsciphers=AES256-GCM-SHA384:AES128-GCM-SHA256:AES256-SHA256:AES128-SHA256:AES256-SHA:AES128-SHA:!ECDHE-RSA-AES128-GCM-SHA256:!ECDHE-RSA-AES256-GCM-SHA384:!ECDHE-ECDSA-AES256-GCM-SHA384:!ECDHE-ECDSA-AES128-GCM-SHA256:!ECDHE-ECDSA-AES256-SHA384:!ECDHE-ECDSA-AES128-SHA256:!ECDHE-ECDSA-AES256-SHA:!ECDHE-ECDSA-AES128-SHA:!ECDHE-RSA-AES256-SHA384:!ECDHE-RSA-AES128-SHA256:!ECDHE-RSA-AES256-SHA:!ECDHE-RSA-AES128-SHA:!DHE-RSA-AES256-GCM-SHA384:!DHE-RSA-AES128-GCM-SHA256:!DHE-RSA-AES256-SHA:!DHE-RSA-AES128-SHA:!DHE-DSS-AES256-SHA256:!DHE-DSS-AES128-SHA256:!DHE-DSS-AES256-SHA:!DHE-DSS-AES128-SHA:!DHE-DSS-DES-CBC3-SHA:!NULL-SHA256:!NULL-SHA
        

        Nota

        Nel codice precedente ! nega l'espressione. Questo indica a OpenSSL di non usare il pacchetto di crittografia seguente.

      2. Riavviare SQL Server con il comando seguente.

        sudo systemctl restart mssql-server
        
  • I database di SQL Server 2014 (12.x) in Windows che usano OLTP in memoria non possono essere ripristinati in SQL Server in Linux. Per ripristinare un database di SQL Server 2014 (12.x) che usa OLTP in memoria, aggiornare i database a una versione più recente di SQL Server in Windows prima di spostarli in SQL Server in Linux tramite backup/ripristino o scollegamento/collegamento.

  • L'autorizzazione utente ADMINISTER BULK OPERATIONS per il momento non è supportata in Linux.

  • I backup compressi con TDE eseguiti usando SQL Server 2019 (15.x) CU 16 e versioni successive non possono essere ripristinati a versioni CU precedenti di SQL Server 2019 (15.x). Per altre informazioni, vedere CORREZIONE: si verifica l'errore 3241 durante l'esecuzione di RESTORE DATABASE o RESTORE LOG.

    I backup compressi con Transparent Data Encryption (TDE) eseguiti mediante versioni CU precedenti di SQL Server 2019 (15.x) possono ancora essere ripristinati usando SQL Server 2019 (15.x) CU 16 e versioni successive.

Rete

Le funzionalità che coinvolgono le connessioni TCP in uscita dal processo sqlservr, ad esempio i server collegati, PolyBase o i gruppi di disponibilità, potrebbero non funzionare se vengono soddisfatte entrambe le condizioni seguenti:

  1. Il server di destinazione è specificato come nome host e non come indirizzo IP.

  2. L'istanza di origine ha IPv6 disabilitato nel kernel. Per verificare se il sistema ha IPv6 abilitato nel kernel, è necessario che vengano superati tutti i test seguenti:

    • cat /proc/cmdline visualizzerà la riga di comando di avvio del kernel corrente. L'output non deve contenere ipv6.disable=1.
    • La directory /proc/sys/net/ipv6/ deve esistere.
    • Un programma C che chiama socket(AF_INET6, SOCK_STREAM, IPPROTO_IP) deve avere esito positivo. Syscall deve restituire fd != -1 e non deve verificarsi l'errore EAFNOSUPPORT.

L'errore esatto dipende dalla funzionalità. Per i server collegati, viene presentato come errore di timeout di accesso. Per i gruppi di disponibilità, il DDL ALTER AVAILABILITY GROUP JOIN nel database secondario avrà esito negativo dopo 5 minuti con un errore download configuration timeout.

Per ovviare al problema, effettuare una delle seguenti operazioni:

  1. Usare gli IP invece dei nomi host per specificare la destinazione della connessione TCP.

  2. Abilitare IPv6 nel kernel rimuovendo ipv6.disable=1 dalla riga di comando di avvio. La modalità di esecuzione di questa operazione dipende dalla distribuzione di Linux e dal bootloader, ad esempio grub. Se si vuole disabilitare IPv6, si può comunque farlo impostando net.ipv6.conf.all.disable_ipv6 = 1 nella configurazione sysctl (ad esempio, /etc/sysctl.conf). Questa operazione impedirà sempre alla scheda di rete del sistema di ottenere un indirizzo IPv6, ma consentirà di usare le funzionalità di sqlservr.

File system di rete (NFS)

Se si usano condivisioni di rete NFS (Network File System, file system di rete) nell'ambiente di produzione, tenere presenti i requisiti di supporto seguenti:

  • Usare NFS versione 4.2 o successiva. Le versioni precedenti di NFS non supportano le funzionalità necessarie, come fallocate e la creazione di file sparse, comuni ai file system moderni.

  • Individuare solo le directory /var/opt/mssql nel montaggio NFS. Non sono supportati altri file, ad esempio i file binari di sistema di SQL Server.

  • Assicurarsi che i client NFS usino l'opzione nolock per il montaggio della condivisione remota.

Localizzazione

  • Se le impostazioni locali non sono in inglese (en_us) durante l'installazione, è necessario usare la codifica UTF-8 nella sessione o nel terminale Bash. Se si usa la codifica ASCII, potrebbe essere visualizzato un errore simile al seguente:

    UnicodeEncodeError: 'ascii' codec can't encode character u'\xf1' in position 8: ordinal not in range(128)
    

    Se non è possibile usare la codifica UTF-8, eseguire il programma di installazione usando la variabile di ambiente MSSQL_LCID per specificare la lingua scelta.

    sudo MSSQL_LCID=<LcidValue> /opt/mssql/bin/mssql-conf setup
    
  • Quando si eseguono mssql-conf setup e un'installazione non in inglese di SQL Server, vengono visualizzati caratteri estesi non corretti dopo il testo "Configurazione di SQL Server..." localizzato. Invece, per le installazioni non basate sull'alfabeto latino, la frase potrebbe mancare completamente. La frase mancante dovrebbe corrispondere alla stringa localizzata seguente:

    The licensing PID was successfully processed. The new edition is [<Name> edition].

    Questa stringa viene visualizzata solo a scopo informativo. Il problema verrà risolto nel successivo aggiornamento cumulativo di SQL Server per tutte le lingue. Il problema non influisce in alcun modo sull'installazione di SQL Server.

Non tutti i filtri sono disponibili con questa versione, inclusi i filtri per i documenti di Microsoft Office. Per un elenco di filtri supportati, vedere Installare la ricerca full-text di SQL Server in Linux.

SQL Server Integration Services (SSIS)

In questa versione il pacchetto mssql-server-is non è supportato in SUSE. È attualmente supportato in Ubuntu e in Red Hat Enterprise Linux (RHEL).

I pacchetti di Integration Services possono usare connessioni ODBC in Linux. Questa funzionalità è stata testata con i driver ODBC di SQL Server e MySQL, ma è previsto che funzioni anche con i driver ODBC Unicode che osservano la specifica ODBC. In fase di progettazione è possibile specificare un DSN o una stringa di connessione per la connessione ai dati ODBC. È anche possibile usare l'autenticazione di Windows. Per altre informazioni, vedere il post di blog che annuncia il supporto ODBC in Linux.

Le funzionalità seguenti non sono supportate in questa versione quando si eseguono pacchetti SSIS in Linux:

  • Database del catalogo di Integration Services
  • Esecuzione pianificata dei pacchetti tramite SQL Agent
  • Autenticazione di Windows
  • Componenti di terze parti
  • Change Data Capture (CDC)
  • Integration Services Scale Out
  • Feature Pack di Azure per SSIS
  • Supporto di Hadoop e HDFS
  • Microsoft Connector for SAP BW

Per un elenco di componenti SSIS predefiniti non attualmente supportati oppure supportati con limitazioni, vedere Limitazioni e problemi noti di SSIS in Linux.

Per altre informazioni su SSIS in Linux, vedere gli articoli seguenti:

SQL Server Management Studio (SSMS)

Le limitazioni seguenti si applicano a SQL Server Management Studio in Windows connesso a SQL Server in Linux.

  • I piani di manutenzione non sono supportati.

  • Il data warehouse di gestione e l'agente di raccolta dati in SQL Server Management Studio non sono supportati.

  • I componenti dell'interfaccia utente di SQL Server Management Studio con le opzioni Autenticazione di Windows o Registro eventi di Windows non funzionano con Linux. È comunque possibile usare queste funzionalità con altre opzioni, ad esempio gli account di accesso SQL.

  • Non è possibile modificare il numero di file di log da conservare.

Vedi anche

Passaggi successivi