Comment installer les outils de ligne de commande SQL Server SQLCMD et BCP sur RHEL 8.1

Par: Manvendra Singh / Mise à jour: 2021-11-23 / Commentaires / Liés: 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | Plus > Virtualisation

Problème

Nous avons installé SQL Server 2019 sur RHEL 8.1 dans notre dernier article. Maintenant, nous allons installer des outils de ligne de commande SQL Server tels que QLCMD et BCP pour accéder aux bases de données SQLServer localement sur le système.

Solution

Vous avez besoin d’un utilitaire, d’un outil ou d’un programme pour accéder, gérer ou configurer les bases de données hébergées sur les systèmes onLinux. Vous pouvez utilisersql Server Management Studio orAzure DataStudio pour établir des connexions de base de données à l’instance SQL Server sur Linux, mais dans cet article, nous verrons comment installer certains outils de ligne de commande localement.

Remarque, il s’agit du 8e article de cette série, lisez les articles précédents pour comprendre comment installer et configurer SQL Server2019 sur RHEL 8.1. Voir les étapes suivantes à la fin de cet article pour les liens vers lesautres articles.

Installez les outils de ligne de commande SQL Server SQLCMD et BCP

Vérifions d’abord si SQLCMD est installé sur la machine cible. Tapez simplement SQLCMD sur votre terminal et appuyez sur entrée. Si cet utilitaire est installé, la plupart des systèmes d’exploitation le reconnaîtront et afficheront des détails à ce sujet. utilité ou erreur de connexion.

--Check whether SQLCMD is installed or notsqlcmd

J’ai exécuté cette commande et j’ai trouvé que cet outil n’est pas installé sur cette machine dans l’image ci-dessous. Nous pouvons exécuter la commande ci-dessous pour vérifier si le référentiel existe.

--Verify SQL Server Repositorysudo ls /etc/yum.repos.d

Nous ne pouvons voir que deux dépôts dans l’image ci-dessous. L’un est pour SQL Server2019 et l’autre pour RHEL, nous devrons donc télécharger et installer.

 vérifiez respository

Nous pouvons exécuter la commande ci-dessous pour télécharger le référentiel. Changez le chemin dans l’URL ci-dessous de /rhel/8 à /rhel/7/ si vous utilisez RHEL 7.x.

--Download Microsoft Red Hat Repository Configuration file sudo curl -o /etc/yum.repos.d/msprod.repo https://packages.microsoft.com/config/rhel/8/prod.repo

La commande a été exécutée avec succès et nous pouvons maintenant voir la configuration supplémentaire du référentiel.fichier msprod.repo dans l’image ci-dessous.

 télécharger msprod.repo

L’étape ci-dessous est facultative si vous installez SQL Server 2019 et les outils de ligne de commande SQLCMD sur une nouvelle machine. Mais si vous installez ces produits sur une machine ancienne et que vous aviez déjà installé une version précédente de mssql-tools, vous devez ensuite supprimer les anciens paquets unixODBC installés sur votre machine.Vous pouvez exécuter la commande ci-dessous pour supprimer ce composant.

--Remove unixODBC packagessudo yum remove unixODBC-utf16 unixODBC-utf16-devel

Comme je l’installe sur un nouveau système, la sortie affiche nomatch pour le logiciel ci-dessus, mais si vous avez une machine plus ancienne, vous devez l’exécuter pour supprimer ce composant.

 supprimer l'ancien répertoire

Maintenant, nous allons installer l’outil de ligne de commande SQL Server mssql-tools avec unixODBC-develpackage en exécutant les commandes ci-dessous.

--Install mssql-tool along with unixODBC packagesudo yum install -y mssql-tools unixODBC-devel

Nous pouvons voir tous les paquets qui seront installés avec le composant mssql-tools. Nous pouvons également voir le paquet unixODBC qui est en cours d’installation. Tous ces paquets seront téléchargés et installés comme indiqué dans l’image ci-dessous. L’installateur vous demandera d’entrer pour accepter les conditions de licence de cet outil.

 installez mssql-tools sur linux

Vous pouvez voir que j’ai entré YES deux fois pour accepter les termes de licence des deux paquets. Les deux paquets ont été installés avec succès après avoir accepté les conditions de licence, comme indiqué dans la capture d’écran ci-dessous.

 installer mssql-tools sous linux

Les outils de ligne de commande SQL Server sont maintenant installés. Vous pouvez aller de l’avant et utiliser ces outils pour créer et gérer des bases de données selon vos besoins.

Si vous rencontrez toujours des problèmes d’accès ou de lancement de l’outil SQLCMD, vous devez ajouter des variables d’environnement path pour les lancer facilement. Exécutez les commandes ci-dessous pour modifier le CHEMIN d’ACCÈS pour les sessions de connexion et les sessions interactives ou non de connexion.

--Add /opt/mssql-tools/bin/ to our path environment variableecho 'export PATH="$PATH:/opt/mssql-tools/bin"' >> ~/.bash_profileecho 'export PATH="$PATH:/opt/mssql-tools/bin"' >> ~/.bashrcsource ~/.bashrc

Au début, sqlcmd n’est pas reconnu comme indiqué ci-dessous.

J’ajouterai la variable d’environnement /opt/mssql-tools/bin/toour path et je l’exécuterai à nouveau. Cette fois, cela fonctionne, bien que nous ayons d’autres erreurs, nous savons donc que l’outil peut être trouvé.

vérification sqlcmd

Nous pouvons valider l’installation en nous connectant à l’instance SQL Server 2019 à l’aide de l’outil SQLCMD. Exécutez la commande ci-dessous pour établir une connexion à la base de données.

--Connect to SQL Server 2019 instance hosted on RHEL8.1 using SQLCMD tool--Replace 192.168.6.128 with your IP or server name--I used sa account with -U parameter. Press Enter to write passwordSqlcmd -S192.168.6.128 -Usa --Connect locally on the serversqlcmd -S localhost -U SA -P '<YourPassword>'

Vous pouvez voir que j’ai établi une connexion à la base de données à l’aide de l’outil sqlcmd et que j’ai ensuite exécuté une simple instruction T-SQL pour récupérer la version installée sur SQLServer.

 exemple de requête utilisant sqlcmd

J’ai utilisé l’utilitaire PuTTY pour effectuer toutes les installations et la validation de connexion dans les étapes ci-dessus. Lorsque j’ai vérifié sur mon serveur local, il y avait le même problème. SQLCMD n’a pas été reconnu par le terminal serveur RHEL. Lorsque j’ai ajouté le chemin environmentvariable, cela a réussi. Si vous êtes confronté à une situation similaire où vous ne pouvez pas accéder à l’outil de ligne de commande SQL Server localement ou à distance, essayez d’ajouter la variable pathenvironment.

 accès via sqlcmd

J’ai également établi une connexion de base de données localement sur le serveur et récupéré les mêmes informations que j’ai utilisées avec PuTTY. Vous pouvez voir l’exécution et la validation réussies de cet outil ci-dessous.

 exemple de requête utilisant sqlcmd

De même, j’ai vérifié l’utilitaire de ligne de commande BCP et vous pouvez le voir reconnu avec succès par les deux terminaux localement sur le serveur ainsi qu’à distance en utilisant l’utilitaire PuTTY.

 vérification de l'utilitaire BCP

Voici la capture d’écran de l’utilitaire BCP utilisant l’utilitaire PuTTY.

 vérification de l'utilitaire bcp
Étapes suivantes

Des outils de ligne de commande SQL Server ont été installés, ce qui est très utile pour interagir avec l’instance SQL Server. Allez-y et utilisez-le selon vos besoins pour gérer et configurer des bases de données sur ce serveur.

  • Voir la partie 1 de cette série pour commencer au début : Installez VMware Workstation Pro pour SQL Server.

 obtenir des scripts

 bouton conseil suivant

À propos de l’auteur
 Auteur de MSSQLTips Manvendra Singh Manvendra Singh a plus de 5 ans d’expérience avec SQL Server et s’est concentré sur la mise en miroir de bases de données, la réplication, l’expédition de journaux, etc.
Voir tous mes conseils

Article Dernière mise à jour : 2021-11-23

Leave a Reply