Démarrage rapide : Installer SQL Server et créer une base de données sur Ubuntu
S’applique à : SQL Server - Linux
Dans ce guide de démarrage rapide, vous allez installer SQL Server 2017 (14.x) sur Ubuntu 18.04. Ensuite, vous pouvez vous connecter avec sqlcmd pour créer votre première base de données et exécuter des requêtes.
Pour plus d'informations sur les plateformes prises en charge, consultez les notes de version de SQL Server 2017 on Linux.
Dans ce guide de démarrage rapide, vous allez installer SQL Server 2019 (15.x) sur Ubuntu 20.04. Ensuite, vous pouvez vous connecter avec sqlcmd pour créer votre première base de données et exécuter des requêtes.
Pour plus d'informations sur les plateformes prises en charge, consultez les notes de version de SQL Server 2019 on Linux.
Dans ce guide de démarrage rapide, vous allez installer SQL Server 2022 (16.x) sur Ubuntu 20.04 ou 22.04. Ensuite, vous pouvez vous connecter avec sqlcmd pour créer votre première base de données et exécuter des requêtes.
Pour plus d’informations sur les plateformes prises en charge, consultez Notes de publication de SQL Server 2022 sur Linux.
Conseil
Ce tutoriel nécessite l'intervention de l'utilisateur et une connexion Internet. Si les procédures d’installation sans assistance ou hors connexion vous intéressent, consultez Conseils d’installation pour SQL Server sur Linux.
Si vous choisissez d'avoir une machine virtuelle (MV) SQL Server préinstallée sur Ubuntu qui est prête à exécuter votre charge de travail de production, suivez les meilleures pratiques de création de la machine virtuelle SQL Server.
Images de la Place de marché Azure
Vous pouvez créer votre machine virtuelle en fonction de l’une des deux images suivantes de la Place de marché Azure :
Lorsque vous utilisez ces images, vous évitez l’étape d’installation et pouvez configurer directement l’instance en fournissant la référence SKU et le mot de passe sa
nécessaire pour commencer à utiliser SQL Server. Les machines virtuelles SQL Server Azure déployées sur Ubuntu Pro à l’aide des images ci-dessus de la Place de marché sont entièrement prises en charge par Microsoft et Canonical.
Vous pouvez configurer SQL Server sur Linux avec mssql-conf à l’aide de la commande suivante :
sudo /opt/mssql/bin/mssql-conf setup
Image Place de marché Azure
Vous pouvez créer votre machine virtuelle en fonction de l’image suivante de la Place de marché Azure : Ubuntu 20.04.
Lorsque vous utilisez cette image, vous évitez l’étape d’installation et pouvez configurer directement l’instance en fournissant la référence SKU et le mot de passe sa
nécessaire pour commencer à utiliser SQL Server. Les machines virtuelles SQL Server Azure déployées sur Ubuntu Pro à l’aide des images ci-dessus de la Place de marché sont entièrement prises en charge par Microsoft et Canonical.
Vous pouvez configurer SQL Server sur Linux avec mssql-conf à l’aide de la commande suivante :
sudo /opt/mssql/bin/mssql-conf setup
Prérequis
Vous devez disposer d’une machine Ubuntu 18.04 avec au moins 2 Go de mémoire.
Pour installer Ubuntu 18.04 sur votre propre machine, accédez à https://releases.ubuntu.com/18.04/. Vous pouvez également créer des machines virtuelles Ubuntu dans Azure. Voir Tutoriel : Créer et gérer des machines virtuelles Linux avec l’interface Azure CLI.
Vous devez disposer d’une machine Ubuntu 20.04 avec au moins 2 Go de mémoire.
Pour installer Ubuntu 20.04 sur votre propre machine, accédez à https://releases.ubuntu.com/20.04/. Vous pouvez également créer des machines virtuelles Ubuntu dans Azure. Voir Tutoriel : Créer et gérer des machines virtuelles Linux avec l’interface Azure CLI.
Vous devez disposer d’une machine Ubuntu 20.04 avec au moins 2 Go de mémoire.
Pour installer Ubuntu 20.04 sur votre propre machine, accédez à https://releases.ubuntu.com/20.04/. Vous pouvez également créer des machines virtuelles Ubuntu dans Azure. Voir Tutoriel : Créer et gérer des machines virtuelles Linux avec l’interface Azure CLI.
Si vous avez précédemment installé un Community Technology Preview (CTP) ou une version Release Candidate (RC) de SQL Server, vous devez d'abord supprimer l'ancien référentiel avant de suivre ces étapes. Pour plus d’informations, consultez Configurer les référentiels pour l’installation et la mise à niveau de SQL Server sur Linux.
Le Sous-système Windows pour Linux n’est pas pris en charge comme cible d’installation pour SQL Server.
Pour les autres configurations système requises, voir Configuration système requise pour SQL Server sur Linux.
Installer SQL Server
Pour configurer SQL Server sur Ubuntu, exécutez les commandes suivantes dans un terminal afin d’installer le package mssql-server.
Importez les clés GPG de dépôt public :
curl https://packages.microsoft.com/keys/microsoft.asc | sudo tee /etc/apt/trusted.gpg.d/microsoft.asc
Enregistrez le référentiel SQL Server Ubuntu :
sudo add-apt-repository "$(wget -qO- https://packages.microsoft.com/config/ubuntu/18.04/mssql-server-2017.list)"
Conseil
Si vous souhaitez installer une autre version de SQL Server, consultez les versions SQL Server 2019 (15.x) ou SQL Server 2022 (16.x) dans cet article.
Exécutez les commandes suivantes pour installer SQL Server :
sudo apt-get update sudo apt-get install -y mssql-server
Une fois l'installation du package terminée, lancez
mssql-conf setup
et suivez les invites pour définir le mot de passe AS et choisir votre édition. Pour rappel, les éditions suivantes de SQL Server sont sous licence libre : Evaluation, Developer, et Express.sudo /opt/mssql/bin/mssql-conf setup
N’oubliez pas de spécifier un mot de passe fort pour le compte SA. Vous avez besoin d’une longueur minimale de 8 caractères, y compris des lettres majuscules et minuscules, des chiffres de base 10 et/ou des symboles non alphanumériques.
Une fois la configuration terminée, vérifiez que le service est en cours d'exécution :
systemctl status mssql-server --no-pager
Si vous prévoyez de vous connecter à distance, vous devrez peut-être aussi ouvrir le port TCP de SQL Server (par défaut 1433) sur votre pare-feu.
Importez les clés GPG de dépôt public :
curl https://packages.microsoft.com/keys/microsoft.asc | sudo tee /etc/apt/trusted.gpg.d/microsoft.asc
Enregistrez le référentiel SQL Server Ubuntu :
sudo add-apt-repository "$(wget -qO- https://packages.microsoft.com/config/ubuntu/20.04/mssql-server-2019.list)"
Conseil
Si vous souhaitez installer une autre version de SQL Server, consultez les versions SQL Server 2017 (14.x) ou SQL Server 2022 (16.x) dans cet article.
Exécutez les commandes suivantes pour installer SQL Server :
sudo apt-get update sudo apt-get install -y mssql-server
Une fois l'installation du package terminée, lancez
mssql-conf setup
et suivez les invites pour définir le mot de passe AS et choisir votre édition. Pour rappel, les éditions suivantes de SQL Server sont sous licence libre : Evaluation, Developer, et Express.sudo /opt/mssql/bin/mssql-conf setup
N’oubliez pas de spécifier un mot de passe fort pour le compte SA. Vous avez besoin d’une longueur minimale de 8 caractères, y compris des lettres majuscules et minuscules, des chiffres de base 10 et/ou des symboles non alphanumériques.
Une fois la configuration terminée, vérifiez que le service est en cours d'exécution :
systemctl status mssql-server --no-pager
Si vous prévoyez de vous connecter à distance, vous devrez peut-être aussi ouvrir le port TCP de SQL Server (par défaut 1433) sur votre pare-feu.
Importez les clés GPG de dépôt public :
curl https://packages.microsoft.com/keys/microsoft.asc | sudo tee /etc/apt/trusted.gpg.d/microsoft.asc
Enregistrez le référentiel SQL Server Ubuntu :
sudo add-apt-repository "$(wget -qO- https://packages.microsoft.com/config/ubuntu/20.04/mssql-server-2022.list)"
Conseil
Si vous souhaitez installer une autre version de SQL Server, consultez les versions SQL Server 2017 (14.x) ou SQL Server 2019 (15.x) de cet article.
Exécutez les commandes suivantes pour installer SQL Server :
sudo apt-get update sudo apt-get install -y mssql-server
Une fois l'installation du package terminée, lancez
mssql-conf setup
et suivez les invites pour définir le mot de passe AS et choisir votre édition. Pour rappel, les éditions suivantes de SQL Server sont sous licence libre : Evaluation, Developer, et Express.sudo /opt/mssql/bin/mssql-conf setup
N’oubliez pas de spécifier un mot de passe fort pour le compte SA. Vous avez besoin d’une longueur minimale de 8 caractères, y compris des lettres majuscules et minuscules, des chiffres de base 10 et/ou des symboles non alphanumériques.
Une fois la configuration terminée, vérifiez que le service est en cours d'exécution :
systemctl status mssql-server --no-pager
Si vous prévoyez de vous connecter à distance, vous devrez peut-être aussi ouvrir le port TCP de SQL Server (par défaut 1433) sur votre pare-feu.
À ce stade, SQL Server fonctionne sur votre machine Ubuntu et est prêt à l'emploi.
Désactiver le compte sa
dans le cadre des meilleures pratiques
Lorsque vous vous connectez à votre instance SQL Server à l’aide du compte sa
pour la première fois après l’installation, selon les meilleures pratiques en matière de sécurité, il est important de suivre ces étapes, puis de désactiver immédiatement la connexion sa
.
Créez une connexion et définissez-la comme membre du rôle serveur administrateur système.
Selon que vous disposez d’un déploiement de conteneur ou sans conteneur, activez l’Authentification Windows, créez une connexion Windows et ajoutez-la au rôle serveur administrateur système.
Sinon, créez une connexion à l’aide de l’authentification SQL Server et ajoutez-la au rôle serveur administrateur système.
Connectez-vous à l’instance SQL Server à l’aide de la nouvelle connexion que vous avez créée.
Désactivez le compte
sa
, comme recommandé dans le cadre des meilleures pratiques de sécurité.
Installer les outils en ligne de commande SQL Server
Pour créer une base de données, vous devez vous connecter à un outil capable d’exécuter des instructions Transact-SQL sur SQL Server. Les étapes suivantes installent les outils en ligne de commande SQL Server : utilitaire sqlcmd et utilitaire bcp.
Procédez comme suit pour installer mssql-tools18 sur Ubuntu.
Notes
- Ubuntu 18.04 est pris en charge à compter de SQL Server 2019 (15.x) CU 3.
- Ubuntu 20.04 est pris en charge à compter de SQL Server 2019 (15.x) CU 10.
Importez les clés GPG de référentiel public.
curl https://packages.microsoft.com/keys/microsoft.asc | sudo tee /etc/apt/trusted.gpg.d/microsoft.asc
Enregistrez le référentiel Microsoft Ubuntu.
Pour Ubuntu 22.04, utilisez la commande suivante :
curl https://packages.microsoft.com/config/ubuntu/22.04/prod.list | sudo tee /etc/apt/sources.list.d/mssql-release.list
Pour Ubuntu 20.04, utilisez la commande suivante :
curl https://packages.microsoft.com/config/ubuntu/20.04/prod.list | sudo tee /etc/apt/sources.list.d/mssql-release.list
Pour Ubuntu 18.04, utilisez la commande suivante :
curl https://packages.microsoft.com/config/ubuntu/18.04/prod.list | sudo tee /etc/apt/sources.list.d/mssql-release.list
Pour Ubuntu 16.04, utilisez la commande suivante :
curl https://packages.microsoft.com/config/ubuntu/16.04/prod.list | sudo tee /etc/apt/sources.list.d/mssql-release.list
Mettez à jour la liste des sources et exécutez la commande d'installation avec le package pour développeur unixODBC.
sudo apt-get update sudo apt-get install mssql-tools18 unixodbc-dev
Pour effectuer la mise à jour vers la version de mssql-tools la plus récente, exécutez les commandes suivantes :
sudo apt-get update sudo apt-get install mssql-tools18
Facultatif : Ajoutez
/opt/mssql-tools18/bin/
à votre variable d'environnementPATH
dans un interpréteur de commandes Bash.Pour rendre sqlcmd et bcp accessibles depuis l’interpréteur de commandes Bash pour les sessions de connexion, modifiez votre
PATH
dans le fichier~/.bash_profile
à l’aide de la commande suivante :echo 'export PATH="$PATH:/opt/mssql-tools18/bin"' >> ~/.bash_profile source ~/.bash_profile
Pour rendre sqlcmd et bcp accessibles depuis l’interpréteur de commandes Bash pour les sessions interactives/sans connexion, modifiez le
PATH
dans le fichier~/.bashrc
à l’aide de la commande suivante :echo 'export PATH="$PATH:/opt/mssql-tools18/bin"' >> ~/.bashrc source ~/.bashrc
Se connecter localement
La procédure suivante utilise sqlcmd pour se connecter localement à votre nouvelle instance de SQL Server.
Exécutez sqlcmd avec des paramètres pour le nom SQL Server (
-S
), le nom d’utilisateur (-U
) et le mot de passe (-P
). Dans ce didacticiel, comme vous vous connectez localement, le nom du serveur estlocalhost
. Le nom d’utilisateur estsa
et le mot de passe est celui que vous avez fourni pour le compte d’administrateur système lors de l’installation.sqlcmd -S localhost -U sa -P '<YourPassword>'
Notes
Les versions plus récentes de sqlcmd sont sécurisées par défaut. Si vous souhaitez en savoir plus sur le chiffrement de connexion, veuillez consulter les rubriques Utilitaire sqlcmd pour Windows et Connexion avec sqlcmd pour Linux et macOS. Si la connexion échoue, vous pouvez ajouter l’option
-No
à sqlcmd pour spécifier que le chiffrement est facultatif, et non obligatoire.Vous pouvez omettre le mot de passe dans la ligne de commande pour être invité à l’entrer.
Si vous décidez ultérieurement de vous connecter à distance, spécifiez l’adresse IP ou le nom de l’ordinateur pour le paramètre
-S
et vérifiez que le port 1433 est ouvert sur votre pare-feu.Si l’opération réussit, vous devez accéder à une invite de commandes sqlcmd :
1>
.Si un échec de connexion s’affiche, tentez tout d’abord de diagnostiquer le problème à partir du message d’erreur. Examinez ensuite les recommandations en matière de résolution des problèmes de connexion.
Créer et interroger des données
Les sections suivantes vous guident lors de l’utilisation de sqlcmd pour créer une base de données, ajouter des données et exécuter une requête simple.
Pour plus d’informations sur l’écriture de requêtes d’instructions Transact-SQL, consultez la page Didacticiel : écrire des instructions Transact-SQL.
Créer une base de données
La procédure suivante crée une base de données nommée TestDB
.
À partir de l’invite de commandes sqlcmd, collez la commande Transact-SQL suivante pour créer une base de données de test :
CREATE DATABASE TestDB;
Sur la ligne suivante, écrivez une requête pour retourner le nom de toutes les bases de données sur votre serveur :
SELECT Name from sys.databases;
Les deux commandes précédentes n’ont pas été exécutées immédiatement. Vous devez taper
GO
sur une nouvelle ligne pour exécuter les commandes précédentes :GO
Insertion des données
Créez ensuite une table, dbo.Inventory
, et insérez deux nouvelles lignes.
À partir de l’invite de commandes sqlcmd, basculez le contexte vers la nouvelle base de données
TestDB
:USE TestDB;
Créez une table nommée
dbo.Inventory
:CREATE TABLE dbo.Inventory ( id INT, name NVARCHAR(50), quantity INT, PRIMARY KEY (id) );
Insérez des données dans la nouvelle table :
INSERT INTO dbo.Inventory VALUES (1, 'banana', 150); INSERT INTO dbo.Inventory VALUES (2, 'orange', 154);
Tapez
GO
pour exécuter les commandes précédentes :GO
Sélectionner les données
Exécutez maintenant une requête pour retourner des données de la table dbo.Inventory
.
Dans l’invite de commandes sqlcmd, entrez une requête qui retourne les lignes de la table
dbo.Inventory
dont la quantité est supérieure à 152 :SELECT * FROM dbo.Inventory WHERE quantity > 152;
Exécutez la commande :
GO
Quitter l’invite de commandes sqlcmd
Pour mettre fin à votre session sqlcmd, tapez QUIT
:
QUIT
Meilleures pratiques relatives aux performances
Après avoir installé SQL Server sur Linux, consultez les meilleures pratiques pour la configuration de Linux et SQL Server pour améliorer les performances des scénarios de production. Pour plus d'informations, consultez Meilleures pratiques relatives aux performances et lignes directrices de configuration pour SQL Server sur Linux.
Outils de données multiplateforme
En plus de sqlcmd, vous pouvez utiliser les outils multiplateformes suivants pour gérer SQL Server :
Outil | Description |
---|---|
Azure Data Studio | Un utilitaire de gestion de base de données GUI multiplateforme. |
Visual Studio Code | Éditeur de code GUI multiplateforme qui exécute des instructions Transact-SQL avec l’extension mssql. |
PowerShell Core | Outil d’automatisation et de configuration multiplateforme basé sur de cmdlets. |
mssql-cli | Une interface de ligne de commande multiplateforme pour l’exécution de commandes Transact-SQL. |
Se connecter à partir de Windows
Les outils SQL Server sur Windows se connectent aux instances de SQL Server sous Linux de la même façon qu’à n’importe quelle instance distante de SQL Server.
Si vous avez un ordinateur Windows qui peut se connecter à l’ordinateur Linux, tentez la même procédure dans cette rubrique à partir d’une invite de commandes Windows exécutant sqlcmd. Vous devez utiliser le nom ou l'adresse IP de la machine Linux cible plutôt que localhost
, et vous assurer que le port TCP 1433 est ouvert sur la machine SQL Server. Si vous avez des problèmes de connexion à partir de Windows, lisez les recommandations en matière de résolution des problèmes de connexion.
Pour d’autres outils qui s’exécutent sur Windows, mais se connectent à SQL Server sur Linux, consultez :
Autres scénarios de déploiement
Pour connaître les autres scénarios d’installation, consultez les ressources suivantes :
- Mise à niveau : Apprenez à mettre à niveau une installation existante de SQL Server sur Linux
- Désinstaller : Désinstallez SQL Server sous Linux
- Installation sans assistance : Apprenez à créer un script d’installation sans invites
- Installation hors connexion : Apprenez à télécharger manuellement les packages d’installation hors connexion
Pour obtenir des réponses aux questions fréquemment posées, consultez la FAQ de SQL Server sur Linux.
Contenu connexe
Contribuer à la documentation SQL
Saviez-vous que vous pouvez modifier le contenu SQL vous-même ? Dans ce cas, non seulement vous nous aidez à améliorer notre documentation, mais vous êtes également cité en tant que contributeur à la page.
Pour plus d’informations, consultez Guide pratique pour contribuer à la documentation SQL Server