GNU/Linux >> Tutoriels Linux >  >> Ubuntu

Comment installer et configurer MySQL dans Ubuntu 20.04 LTS

MySQL, qui signifie My (nom de la fille du co-fondateur Michael Widenius) Structured Query Language, est un système de gestion de base de données relationnelle open source. Ce SGBDR est pris en charge par Oracle et fonctionne sur presque toutes les plates-formes telles que Linux, UNIX et MS Windows. MYSQL est généralement le premier choix pour la publication en ligne et les applications Web. Facebook, YouTube et Twitter utilisent tous MySQL comme SGBDR. MySQL fait partie de la très populaire pile LAMP :Linux, Apache, MySQL et Python/PHP/Perl.

Dans cet article, nous décrivons étape par étape comment procéder :

  • Installez la dernière version de MySQL disponible dans le référentiel de packages apt
  • Exécuter le script de sécurité MySQL
  • Configurer l'utilisateur root pour accéder au shell MySQL
  • Testez enfin que MySQL est en cours d'exécution

Nous avons exécuté les commandes et procédures mentionnées dans cet article sur un système Ubuntu 20.04 LTS

Installation de MySQL et configuration de la sécurité

Dans cette section, nous décrivons comment installer MySQL à partir de la ligne de commande Ubuntu et configurer la sécurité.

Vous pouvez ouvrir la ligne de commande Ubuntu, le terminal, soit depuis la barre de recherche du lanceur d'applications, soit en appuyant sur Ctrl+Alt+T.

Étape 1 :Mettre à jour l'index du référentiel

Pour installer la dernière version disponible d'un logiciel à partir des référentiels Internet, votre index de référentiel local doit correspondre. Exécutez la commande suivante en tant que sudo pour mettre à jour l'index de votre référentiel local :

$ sudo apt-get update

Étape 2 :Installez le serveur MySQL avec apt

Veuillez exécuter la commande suivante en tant que sudo pour installer MySQL à partir des référentiels APT.

$ sudo apt-get install mysql-server

Veuillez noter que seul un utilisateur autorisé sur Ubuntu peut ajouter, supprimer et configurer des logiciels.

Le système peut vous demander le mot de passe pour sudo et vous proposer également une option Y/n pour continuer l'installation. Tapez Y puis appuyez sur Entrée ; MySQL sera alors installé sur votre système. Cependant, le processus peut prendre un certain temps en fonction de votre vitesse Internet.

Étape 3 :Vérifier l'installation (facultatif)

Vous pouvez vérifier votre installation MySQL et également vérifier le numéro de version en exécutant la commande suivante dans votre terminal :

$ mysql --version

Étape 4 :effectuez les configurations de sécurité en exécutant le script de sécurité fourni

Chaque fois que vous installez une nouvelle copie de MySQL, vous devez modifier certains paramètres par défaut pour augmenter la sécurité de votre installation MySQL. Celles-ci incluent la suppression des utilisateurs de test, des bases de données de test et l'autorisation de connexion à distance par un utilisateur root.

Exécutez la commande suivante en tant que sudo pour démarrer le script de sécurité :

$ sudo mysql_secure_installation

Lorsque vous exécutez cette commande, la première chose que vous serez invité à faire est de configurer le plugin Validate Password. Cela vous permet de définir un mot de passe sécurisé pour root, en fonction de la force du mot de passe que vous souhaitez choisir. Tapez Y pour démarrer le plug-in Valider le mot de passe et vous obtiendrez l'invite suivante :

Entrez le nombre de votre choix pour la force du mot de passe et appuyez sur Entrée. Le système vous demandera alors le nouveau mot de passe de root. Tapez le mot de passe et retapez-le aux invites suivantes.

Le système affichera alors la force du mot de passe que vous avez fourni et vous demandera également si vous souhaitez continuer avec le mot de passe.

Tapez Y pour Oui et appuyez sur Entrée.

Le système va maintenant vous poser une série de questions, une à la fois, et vous pouvez définir la sécurité de votre système en fonction de vos réponses à ces questions.

Série de questions :

La première question vous demandera si vous souhaitez supprimer les utilisateurs de test anonymes.

Appuyez sur y et sur la touche Entrée.

La deuxième question vous demandera si vous souhaitez interdire la connexion root à partir d'un système distant. Cela devrait normalement être votre choix, car pour un système sécurisé, root ne devrait être autorisé à se connecter qu'à partir de localhost.

Nous vous recommandons donc de saisir y.

La troisième question vous demande si vous souhaitez supprimer la base de données MySQL par défaut nommée "test" de votre système et également supprimer l'accès à celle-ci.

Tapez y pour supprimer cette base de données de test.

Pour que toutes vos modifications configurées ci-dessus prennent effet, le système doit recharger les tables d'autorisations. Entrez y et toutes vos modifications de sécurité seront appliquées.

Configuration de root pour utiliser le shell MySQL

Lors de l'exécution du script de sécurité, vous avez spécifié un mot de passe pour root. Cependant, cet utilisateur n'est pas autorisé à se connecter à MySQL Shell avec le même mot de passe. Vous pouvez configurer root pour utiliser MySQL Shell en changeant sa méthode d'authentification de la valeur par défaut "auth_socket" à "mysql_native_password".

Voici comment procéder :

Étape 1 :Démarrer MySQL Shell

Tout d'abord, démarrez le shell MySQL en exécutant la commande suivante en tant que sudo :

$ sudo mysql

Cela démarrera le shell MySQL afin que vous puissiez travailler sur l'invite MySQL.

Étape 2 :Vérifier la méthode d'authentification pour les utilisateurs MySQL

À l'invite MySQL, entrez la commande suivante, qui vous permettra de vérifier la méthode d'authentification/le plug-in que tous vos comptes MySQL utilisent actuellement :

mysql> SELECT user,authentication_string,plugin,host FROM mysql.user;

Dans la sortie ci-dessus, vous pouvez voir que root utilise le plugin auth-socket pour l'authentification par défaut.

Étape 3 :Modifier la méthode d'authentification pour root

Notre objectif est que l'utilisateur root s'authentifie auprès de MySQL avec un mot de passe. Pour ce faire, exécutez la commande suivante, qui aura l'utilisateur root identifié par un mysql_native_password. N'oubliez pas que ce mot de passe doit être très fort.

mysql> ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'password';

À partir de maintenant, votre utilisateur root n'aura plus le mot de passe que vous avez spécifié lors de l'exécution du script de sécurité fourni, mais le mot de passe fort que vous avez spécifié dans la commande ci-dessus.

Étape 4 :Recharger les tableaux de subventions

Il est maintenant temps de dire au serveur d'utiliser les nouveaux paramètres d'autorisation à partir de maintenant. Exécutez la commande suivante à l'invite de commande MySQL pour recharger les tables de droits et enregistrer vos modifications :

mysql> FLUSH PRIVILEGES;

Étape 5 :Revérifier la méthode d'authentification pour les utilisateurs MySQL

Maintenant, si vous revérifiez la méthode d'authentification pour vos comptes utilisateur MySQL à l'aide de la commande suivante, vous verrez que votre utilisateur root utilise maintenant le plugin mysql_native_password pour l'authentification :

mysql> SELECT user,authentication_string,plugin,host FROM mysql.user;

Maintenant que votre utilisateur root est configuré pour se connecter au shell MySQL avec un mot de passe sécurisé, vous pouvez quitter le shell avec la commande exit comme suit :

mysql> exit

Tester si MySQL est en cours d'exécution

Pour tester si MySQL s'exécute ou non sur votre système, vous pouvez utiliser l'une des méthodes suivantes :

Méthode 1 :vérifier l'état de mysql.service

Après avoir installé MySQL sur votre système, mysql.service devrait très probablement s'exécuter automatiquement. Le résultat de la commande suivante doit vérifier l'état actif du service :

$ systemctl status mysql.service

Si, pour une raison quelconque, le service ne s'exécute pas, vous pouvez utiliser la commande suivante en tant que sudo pour démarrer le service :

$ sudo systemctl start mysql

Vous pouvez utiliser la commande suivante pour arrêter à nouveau le service si nécessaire :

$ sudo systemctl stop mysql

Méthode 2 :en vous connectant à MySQL Admin en tant que root et en exécutant n'importe quelle commande d'administration

MySQL Admin est un client qui vous permet d'effectuer des opérations administratives sur MySQL. Par exemple, exécutons l'une des commandes administratives dessus pour vérifier si le système fonctionne correctement et si notre racine est configurée pour le faire.

$ sudo mysqladmin -p -u root version

Cette commande permet de se connecter à MySQL en tant que root, d'obtenir le mot de passe root, puis de renvoyer le numéro de version de l'administrateur MySQL.

Si la commande fait ce qu'elle est censée faire et produit une sortie similaire à ce qui précède, vous pouvez être sûr que votre MySQL est opérationnel.

Le processus d'installation et de configuration de MySQL sur Ubuntu peut sembler fastidieux pour certains, en particulier lors de l'utilisation de la ligne de commande. Cependant, si vous suivez attentivement les étapes ci-dessus une par une, vous n'aurez aucun problème à avoir une installation fiable, sécurisée et stable de MySQL s'exécutant sur votre Ubuntu.


Ubuntu
  1. Comment installer et configurer Redis sur Ubuntu 18.04

  2. Comment installer et configurer Redmine sur Ubuntu 18.04

  3. Comment installer et configurer Zabbix sur Ubuntu 18.04

  4. Comment installer et configurer Ansible sur Ubuntu 18.04 LTS

  5. Comment installer et configurer Fail2ban sur Ubuntu 20.04 LTS

Comment installer et configurer GitLab CE sur Ubuntu 18.04 LTS

Comment installer et configurer Docker-CE sur Ubuntu 18.04 LTS

Comment installer et configurer Odoo ERP sur Ubuntu 20.04 LTS

Comment installer Conky et Conky Manager sur Ubuntu 18.04 LTS

Comment installer et configurer MySQL sur Ubuntu 18.04

Comment installer et configurer le serveur DNS sur Ubuntu 16.04 LTS