Recherche de site Web

Comment faire pour installer et configurer SQL Server sur RHEL


Ce guide vous guidera tout au long de l’installation de SQL Server 2022 sur RHEL 8.x ou RHEL 9.x, de la connexion à celui-ci à l’aide de l’outil de ligne de commande sqlcmd, de la création d’une base de données et de l’exécution de requêtes de base.

Conditions préalables

Avant de commencer, assurez-vous que les conditions préalables suivantes sont remplies :

  • Assurez-vous d’utiliser une version prise en charge de RHEL (par exemple, RHEL 8 ou 9).
  • Vous avez besoin des privilèges sudo ou root pour installer le logiciel.
  • Au moins 2 Go de RAM, 6 Go d’espace disque disponible et une architecture de processeur prise en charge (x64).

Étape 1 : Activer le mode d’application SELinux sur RHEL

SQL Server 2022 prend en charge l’exécution sur RHEL 8.x et 9.x. Pour RHEL 9, SQL Server peut s’exécuter en tant qu’application confinée à l’aide de SELinux (Security-Enhanced Linux), ce qui renforce la sécurité.

Tout d’abord, vous devez activer SELinux (facultatif mais recommandé pour RHEL 9) pour utiliser SQL Server en tant qu’application confinée.

sestatus
sudo setenforce 1

La commande est utilisée pour activer le mode d’application SELinux, si SELinux est désactivé dans le fichier de configuration (/etc/selinux/config), cette commande ne fonctionnera pas et vous devrez activer SELinux dans le fichier et redémarrer votre système.

Ouvrez le fichier situé dans /etc/selinux/config à l’aide de l’éditeur de texte de votre choix.

sudo vi /etc/selinux/config

Remplacez l’option SELINUX=disabled par SELINUX=enforcer.

Redémarrez votre système pour que les modifications fonctionnent.

sudo reboot

Une fois le système redémarré, vérifiez l’état de SELinux pour confirmer qu’il est en mode Application :

getenforce

Il devrait renvoyer Encontracing.

Étape 2 : Installer SQL Server sur RHEL

Exécutez la commande curl suivante pour télécharger et configurer le référentiel Microsoft SQL Server :

sudo curl -o /etc/yum.repos.d/mssql-server.repo https://packages.microsoft.com/config/rhel/$(rpm -E %{rhel})/mssql-server-2022.repo

Ensuite, installez le package SQL Server à l’aide de la commande suivante :

sudo yum install -y mssql-server

Si vous souhaitez exécuter SQL Server avec une sécurité supplémentaire, vous pouvez installer le package mssql-server-selinux, qui ajoute des règles spéciales pour aider SQL Server à mieux fonctionner avec SELinux.

sudo yum install -y mssql-server-selinux

Une fois l’installation terminée, exécutez le script d’installation et suivez les instructions pour définir un mot de passe pour le compte « sa » et choisissez l’édition de SQL Server souhaitée. N’oubliez pas que les éditions suivantes sont gratuites : Evaluation, Developer et Express.

sudo /opt/mssql/bin/mssql-conf setup

Après l’installation, vérifiez que SQL Server est en cours d’exécution.

sudo systemctl status mssql-server

S’il n’est pas en cours d’exécution, démarrez-le par :

sudo systemctl start mssql-server

Pour autoriser les connexions à distance, vous devez ouvrir le port SQL Server sur le pare-feu RHEL. Par défaut, SQL Server utilise le port TCP 1433. Si votre système utilise FirewallD pour le pare-feu, exécutez les commandes suivantes :

sudo firewall-cmd --zone=public --add-port=1433/tcp --permanent
sudo firewall-cmd --reload

Maintenant, SQL Server est opérationnel sur votre machine RHEL et est prêt à l’utiliser !

Étape 3 : Installer les outils de ligne de commande SQL Server

Pour créer une base de données, vous devez utiliser un outil capable d’exécuter des commandes Transact-SQL sur SQL Server. Voici les étapes d’installation des outils de ligne de commande SQL Server tels que sqlcmd et l’utilitaire bcp.

Tout d’abord, téléchargez le fichier de configuration du référentiel Microsoft Red Hat.

Pour Red Hat 9, utilisez la commande suivante :

curl https://packages.microsoft.com/config/rhel/9/prod.repo | sudo tee /etc/yum.repos.d/mssql-release.repo

Pour Red Hat 8, utilisez la commande suivante :

curl https://packages.microsoft.com/config/rhel/8/prod.repo | sudo tee /etc/yum.repos.d/mssql-release.repo

Ensuite, exécutez les commandes suivantes pour installer mssql-tools18 avec le package de développement unixODBC.

sudo yum install -y mssql-tools18 unixODBC-devel

Pour mettre à jour vers la dernière version de mssql-tools, exécutez les commandes suivantes :

sudo yum check-update
sudo yum update mssql-tools18

Pour que sqlcmd et bcp soient disponibles dans le shell bash à chaque fois que vous vous connectez, mettez à jour votre PATH dans le fichier ~/.bash_profile à l’aide de cette commande :

echo 'export PATH="$PATH:/opt/mssql-tools18/bin"' >> ~/.bash_profile
source ~/.bash_profile

Pour que sqlcmd et bcp soient disponibles dans le shell bash pour toutes les sessions, ajoutez leur emplacement au PATH en modifiant le fichier ~/.bashrc avec cette commande :

echo 'export PATH="$PATH:/opt/mssql-tools18/bin"' >> ~/.bashrc
source ~/.bashrc

Étape 4 : Se connecter à SQL Server sur RHEL

Une fois SQL Server installé, vous pouvez vous y connecter à l’aide de sqlcmd.

Connecter SQL Server localement

sqlcmd -S localhost -U sa -P '<password>' -N -C
  • -S – Spécifie le nom du serveur (utilisez localhost pour les connexions locales).
  • -U – Spécifie le nom d’utilisateur (utilisez sa pour le compte d’administrateur système).
  • -P – Spécifie le mot de passe que vous avez défini lors de la configuration.
  • -N – Chiffre la connexion.
  • -C – Approuve le certificat du serveur sans validation.

En cas de réussite, vous verrez une invite comme celle-ci :

1>

Création d’une base de données SQL

À partir de l’invite de commande 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 de votre serveur :

SELECT Name
FROM sys.databases;

Les deux commandes précédentes ne sont pas exécutées immédiatement. Vous devez taper GO sur une nouvelle ligne pour exécuter les commandes précédentes :

GO

Insertion de données dans une base de données SQL

Ensuite, créez une table, dbo. Inventorier, et insérez deux nouvelles lignes.

USE TestDB;
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), (2, 'orange', 154);

Tapez GO pour exécuter les commandes précédentes :

GO

Interroger des données dans une base de données SQL

À partir de l’invite de commande sqlcmd, entrez une requête qui renvoie des lignes à partir du dbo. Table de stock dont la quantité est supérieure à 152 :

SELECT * FROM dbo.Inventory WHERE quantity > 152;
GO

Pour terminer votre session sqlcmd, tapez QUIT :

QUIT

En plus de sqlcmd, vous pouvez utiliser les outils multiplateformes suivants pour gérer SQL Server :

  • Azure Data Studio : utilitaire de gestion de base de données d’interface graphique multiplateforme.
  • Visual Studio Code : éditeur de code d’interface graphique multiplateforme qui exécute des instructions Transact-SQL avec l’extension mssql.
  • PowerShell Core : outil d’automatisation et de configuration multiplateforme basé sur des applets de commande.
  • mssql-cli : interface de ligne de commande multiplateforme pour l’exécution de commandes Transact-SQL.
Conclusion

En suivant ce guide, vous avez installé SQL Server 2022 sur RHEL, l’avez configuré et créé votre première base de données. Vous avez également appris à interroger des données à l’aide de l’outil sqlcmd.

Articles connexes: