Notes de publication pour SQL Server 2019 sur Linux

S’applique à : SQL Server 2019 (15.x) - Linux

Les notes de publication suivantes s’appliquent à SQL Server 2019 (15.x) s’exécutant sur Linux. Cet article est divisé en sections pour chaque mise en production. Pour plus d’informations sur la prise en charge et les problèmes connus, consultez Problèmes connus. Chaque version est liée à un article de support décrivant les modifications, outre le lien de téléchargement des packages Linux.

Ces notes de publication sont spécifiquement destinées aux versions de SQL Server 2019 (15.x). Pour obtenir des notes de publication sur d’autres éditions, consultez les articles suivants :

Plateformes prises en charge

Plateforme Système de fichiers Guide d'installation Obtenir
Red Hat Enterprise Linux 7.7 - 7.9 ou 8.0 - 8.6 Server XFS ou EXT4 Guide d'installation Obtenir RHEL 8.0
SUSE Enterprise Linux Server v12 (SP3 - SP5), ou v15 (SP1 - SP3) XFS ou EXT4 Guide d'installation Télécharger SLES v15
Ubuntu 16.04 LTS 1, 18.04 LTS, 20.04 LTS XFS ou EXT4 Guide d'installation Obtenir Ubuntu 20.04
Moteur Docker 1.8+ sur Windows, Mac ou Linux N/A Guide d'installation Obtenir Docker

1 La prise en charge de SQL Server sur Ubuntu 16.04 est limitée. Fin avril 2021, Ubuntu 16.04 est passé de la fenêtre de maintenance standard de cinq ans du support LTS (Long Term Support) au support ESM (Extended Security Maintenance). Pour plus d’informations, consultez les détails relatifs au passage d’Ubuntu 16.04 du support LTS au support ESM (Extended Security Maintenance) | Ubuntu.

Conseil

Pour plus d’informations, consultez la configuration système requise pour SQL Server sur Linux. Pour obtenir la dernière stratégie de support pour SQL Server, consultez la Stratégie de support technique pour Microsoft SQL Server.

Outils

La plupart des outils client existants qui ciblent SQL Server peuvent cibler en toute transparence SQL Server sur Linux. Certains outils peuvent avoir une exigence de version spécifique pour fonctionner correctement avec Linux. Pour obtenir la liste complète des outils SQL Server, consultez Outils et utilitaires SQL pour SQL Server.

Dernières versions pour tous les packages

Cette section liste les dernières versions de chaque package par distribution pour SQL Server 2019. Le tableau suivant montre la dernière version, à savoir CU 20. Pour obtenir l’historique complet des versions, consultez Historique des versions pour SQL Server 2019.

Version Libérer Date Build article de la Base de connaissances
SQL Server 2019 (15.x) CU 20 13-04-2023 15.0.4312.2 KB 5024276
Distribution Nom du package Version du package Télécharger
Red Hat Enterprise Linux
RHEL 8 Moteur de base de données 15.0.4312.2-1 Package RPM du moteur de base de données
RHEL 8 Extensibilité 15.0.4312.2-1 Package RPM d’extensibilité
RHEL 8 Recherche en texte intégral 15.0.4312.2-1 Package RPM de recherche en texte intégral
RHEL 8 Haute disponibilité 15.0.4312.2-1 Package RPM haute disponibilité
RHEL 8 Extensibilité Java 15.0.4312.2-1 Package RPM d’extensibilité Java
RHEL 8 PolyBase 15.0.4312.2-1 Package RPM PolyBase
RHEL 8 SSIS 15.0.4063.15-88 Package RPM de SSIS
Serveur SUSE Enterprise Linux
SLES 15 Moteur de base de données 15.0.4312.2-1 Package RPM du moteur de base de données
SLES 15 Extensibilité 15.0.4312.2-1 Package RPM d’extensibilité
SLES 15 Recherche en texte intégral 15.0.4312.2-1 Package RPM de recherche en texte intégral
SLES 15 Haute disponibilité 15.0.4312.2-1 Package RPM haute disponibilité
SLES 15 Extensibilité Java 15.0.4312.2-1 Package RPM d’extensibilité Java
SLES 15 PolyBase 15.0.4312.2-1 Package RPM PolyBase
Ubuntu
Ubuntu 20.04 Moteur de base de données 15.0.4312.2-1 Package Debian du moteur de base de données
Ubuntu 20.04 Extensibilité 15.0.4312.2-1 Package Debian d’extensibilité
Ubuntu 20.04 Recherche en texte intégral 15.0.4312.2-1 Package Debian de recherche en texte intégral
Ubuntu 20.04 Haute disponibilité 15.0.4312.2-1 Package Debian haute disponibilité
Ubuntu 20.04 Extensibilité Java 15.0.4312.2-1 Package Debian d’extensibilité Java
Ubuntu 20.04 PolyBase 15.0.4312.2-1 Package Debian PolyBase
Ubuntu 18.04 SSIS 15.0.4153.1-89 Package Debian de SSIS

Comment installer les mises à jour

Si vous avez configuré le référentiel des mises à jour cumulatives (mssql-server-2019), vous obtenez la dernière mise à jour cumulative des packages SQL Server quand vous effectuez de nouvelles installations. Si vous avez besoin d’images conteneur Docker, consultez les images officielles pour Microsoft SQL Server sur Linux pour Docker Engine. Pour plus d’informations sur la configuration du référentiel, consultez Configurer les référentiels pour SQL Server sur Linux.

Si vous mettez à jour des packages SQL Server existants, exécutez la commande de mise à jour appropriée pour chaque package afin d’obtenir la dernière CU. Pour obtenir des instructions de mise à jour spécifiques pour chaque package, consultez les guides d’installation suivants :

Historique des mises en production

Le tableau suivant liste l’historique des versions de SQL Server 2019 (15.x).

Libérer Version Date de publication
CU 20 15.0.4312.2 13-04-2023
CU 19 15.0.4298.1 16/02/2023
CU 18 GDR 15.0.4280.7 2023-02-14
CU 18 15.0.4261.1 28-09-2022
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 18-04-2022
CU 15 15.0.4198.2 2022-01-27
CU 14 15.0.4188.2 22/11/2021
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 10-02-2021
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 (Supprimée) 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 31-03-2020
CU 3 15.0.4023.6 2020-03-12
CU 2 15.0.4013.40 2020-02-13
CU 1 15.0.4003.23 2020-01-07
GA 15.0.2000.5 04-11-2019

Problèmes connus

Les sections suivantes décrivent les problèmes connus liés à SQL Server 2019 (15.x) sur Linux.

Général

  • La longueur du nom d’hôte dans lequel SQL Server est installé doit être inférieure ou égale à 15 caractères.

    • Résolution : Modifiez le nom dans /etc/hostname en lui attribuant une longueur de 15 caractères ou moins.
  • Le paramétrage manuel de l’heure système à rebours entraînera l’arrêt de la mise à jour de l’heure système interne par SQL Server dans SQL Server.

    • Résolution : Redémarrez SQL Server.
  • Seules les installations à instance unique sont prises en charge.

    • Résolution : Si vous souhaitez avoir plusieurs instances sur un hôte donné, envisagez d’utiliser des machines virtuelles ou des conteneurs Docker.
  • SQL Server Configuration Manager ne peut pas se connecter à SQL Server sur Linux.

  • La langue par défaut de la connexion sa est l’anglais.

    • Résolution : Modifiez la langue de la connexion sa à l'aide de l’instruction ALTER LOGIN.
  • Le fournisseur OLEDB journalise l’avertissement suivant : 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.

    • Résolution : Aucune action n'est requise. Le fournisseur OLEDB est signé avec SHA256. Le moteur de base de données SQL Server ne valide pas correctement le fichier .dll signé.

Bases de données

  • La base de données master ne peut pas être déplacée avec l’utilitaire mssql-conf. D’autres bases de données système peuvent être déplacées avec mssql-conf.

  • Lors de la restauration d’une base de données qui a été sauvegardée sur SQL Server sur Windows, vous devez utiliser la clause WITH MOVE dans l’instruction Transact-SQL.

  • Certains algorithmes (suites de chiffrement) pour le protocole TLS (Transport Layer Security) ne fonctionnent pas correctement avec SQL Server sur Linux. Cela entraîne des échecs de connexion lors d’une tentative de connexion à SQL Server, ainsi que des problèmes lors de l’établissement de connexions entre les réplicas dans des groupes à haute disponibilité.

    • Résolution : Modifiez le script de configuration mssql.conf pour SQL Server sur Linux afin de désactiver les suites de chiffrement problématiques, en procédant comme suit :

      1. Ajoutez la ligne suivante à /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
        

        Notes

        Dans le code précédent, ! inverse l’expression. Cela indique à OpenSSL de ne pas utiliser la suite de chiffrement suivante.

      2. Démarrez SQL Server avec la commande suivante.

        sudo systemctl restart mssql-server
        
  • Les bases de données SQL Server 2014 (12.x) sur Windows qui utilisent l’OLTP en mémoire ne peuvent pas être restaurées sur SQL Server sur Linux. Pour restaurer une base de données SQL Server 2014 (12.x) qui utilise l’OLTP en mémoire, mettez d’abord à niveau les bases de données vers une version plus récente de SQL Server sur Windows, avant de les déplacer vers SQL Server sur Linux, via une sauvegarde/restauration ou un détachement/attachement.

  • L’autorisation utilisateur ADMINISTER BULK OPERATIONS n’est pas prise en charge sur Linux pour l’instant.

  • Les sauvegardes compressées par TDE effectuées à l’aide de SQL Server 2019 (15.x) CU 16 et versions ultérieures ne peuvent pas être restaurées vers les versions antérieures de CU de SQL Server 2019 (15.x). Pour plus d’informations, consultez CORRECTIF : L’erreur 3241 se produit lors de l’exécution de RESTORE LOG ou RESTORE DATABASE.

    Les sauvegardes compressées Transparent Data Encryption (TDE) effectuées à l’aide des versions CU précédentes de SQL Server 2019 (15.x) peuvent toujours être restaurées à l’aide de SQL Server 2019 (15.x) CU 16 et versions ultérieures.

Réseau

Les fonctionnalités qui impliquent des connexions TCP sortantes à partir du processus sqlservr, telles que les serveurs liés, PolyBase ou les groupes de disponibilité, peuvent ne pas fonctionner si les deux conditions suivantes sont réunies :

  1. Le serveur cible est spécifié sous la forme d’un nom d’hôte et non d’une adresse IP.

  2. IPv6 est désactivé dans le noyau de l’instance source. Pour vérifier si IPv6 est activé dans le noyau sur votre système, tous les tests suivants doivent réussir :

    • cat /proc/cmdline imprime le cmdline de démarrage du noyau actuel. La sortie ne doit pas contenir ipv6.disable=1.
    • Le répertoire /proc/sys/net/ipv6/ doit exister.
    • Un programme C qui appelle socket(AF_INET6, SOCK_STREAM, IPPROTO_IP) doit réussir : syscall doit retourner un fd != -1 et ne pas échouer avec EAFNOSUPPORT.

L’erreur exacte dépend de la fonctionnalité. Pour les serveurs liés, cela se manifeste comme une erreur de délai d’attente de connexion. Pour les groupes de disponibilité, le DDL ALTER AVAILABILITY GROUP JOIN sur le secondaire échouera après 5 minutes avec une erreur download configuration timeout.

Pour contourner ce problème, procédez comme suit :

  1. Utilisez des adresses IP au lieu de noms d’hôtes pour spécifier la cible de la connexion TCP.

  2. Activez IPv6 dans le noyau en supprimant ipv6.disable=1 de la ligne de commande de démarrage. La façon de procéder dépend de la distribution Linux et du chargeur de démarrage, par exemple le fichier Grub. Si vous ne souhaitez pas que IPv6 soit désactivé, vous pouvez toujours le désactiver en définissant net.ipv6.conf.all.disable_ipv6 = 1 dans la configuration sysctl (par exemple, /etc/sysctl.conf). Cela empêchera toujours la carte réseau du système d’obtenir une adresse IPv6, tout en autorisant le fonctionnement des fonctionnalités de sqlservr.

NFS (Network File System)

Si vous utilisez des partages distants NFS (Network File System) en production, notez les exigences de support suivantes :

  • Utilisez la version 4.2 ou ultérieure de NFS. Les versions antérieures de NFS ne prennent pas en charge les fonctionnalités requises telles que la création de fichiers fallocate et partiellement alloués, communs aux systèmes de fichiers modernes.

  • Localisez uniquement les répertoires /var/opt/mssql sur le montage NFS. D’autres fichiers, tels que les binaires du système SQL Server, ne sont pas pris en charge.

  • Vérifiez que les clients NFS utilisent l’option nolock lors du montage du partage distant.

Localisation

  • Si vos paramètres régionaux ne sont pas en anglais (en_us) lors de l’installation, vous devez utiliser l’encodage UTF-8 dans votre session/terminal Bash. Si vous utilisez l’encodage ASCII, vous pouvez voir une erreur semblable à la suivante :

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

    Si vous ne pouvez pas utiliser l’encodage UTF-8, exécutez le programme d’installation à l’aide de la variable d’environnement MSSQL_LCID pour spécifier votre choix de langue.

    sudo MSSQL_LCID=<LcidValue> /opt/mssql/bin/mssql-conf setup
    
  • Quand vous exécutez mssql-conf setup et que vous effectuez une installation non anglaise de SQL Server, des caractères étendus incorrects sont affichés après le texte localisé « Configuration de SQL Server... ». Ou, pour les installations non latines, la phrase peut manquer complètement. La phrase manquante doit afficher la chaîne localisée suivante :

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

    Cette chaîne est générée à titre d’information uniquement et la mise à jour cumulative SQL Server suivante répond en toutes les langues. Cela n’affecte en rien la réussite de l’installation de SQL Server.

Tous les filtres ne sont pas disponibles dans cette mise en production, y compris les filtres pour les documents Microsoft Office. Pour obtenir la liste des filtres pris en charge, consultez Installer la recherche en texte intégral SQL Server sur Linux.

SQL Server Integration Services (SSIS)

Le package mssql-server-is n’est pas pris en charge sur SUSE dans cette mise en production. Il est actuellement pris en charge sur Ubuntu et sur Red Hat Enterprise Linux (RHEL).

Les packages Integration Services peuvent utiliser des connexions ODBC sur Linux. Cette fonctionnalité a été testée avec les pilotes SQL Server et MySQL ODBC, mais elle devrait également fonctionner avec tout pilote ODBC Unicode conforme à la spécification ODBC. Au moment de la conception, vous pouvez fournir un DSN ou une chaîne de connexion pour vous connecter aux données ODBC ; vous pouvez également utiliser l'authentification Windows. Pour plus d'informations, consultez le billet de blog annonçant le support d’ODBC sur Linux.

Les fonctionnalités suivantes ne sont pas prises en charge dans cette mise en production lorsque vous exécutez des packages SSIS sur Linux :

  • Integration Services Base de données de catalogue
  • Exécution planifiée du package par l’agent SQL
  • Authentification Windows
  • Composants tiers
  • Capture de données modifiées (CDC)
  • Integration Services Scale-out
  • Feature Pack Azure pour SSIS
  • Support Hadoop et HDFS
  • Microsoft Connector pour SAP BW

Pour obtenir la liste des composants SSIS intégrés qui ne sont pas actuellement pris en charge ou qui sont pris en charge avec les limitations, consultez Limitations et problèmes connus pour SSIS sur Linux.

Pour plus d’informations concernant SSIS sur Linux, consultez les articles suivants :

SQL Server Management Studio (SSMS)

Les limitations suivantes s’appliquent à SQL Server Management Studio sur Windows connecté à SQL Server sur Linux.

  • Les plans de maintenance ne sont pas pris en charge.

  • Management Data Warehouse (MDW) et le collecteur de données dans SQL Server Management Studio ne sont pas pris en charge.

  • Les composants d’interface utilisateur SQL Server Management Studio qui ont des options d’authentification Windows ou de journal des événements Windows ne fonctionnent pas avec Linux. Vous pouvez toujours utiliser ces fonctionnalités avec d’autres options, telles que les connexions SQL.

  • Impossible de modifier le nombre de fichiers journaux à conserver.

Voir aussi

Étapes suivantes