GNU/Linux >> Tutoriels Linux >  >> Panels >> Panels

Comment installer et utiliser MySQL sur Ubuntu 20.04

Dans ce tutoriel, nous allons vous montrer comment installer MySQL sur votre Ubuntu 20.04 et comment l'utiliser avec les commandes MySQL de base. MySQL est un système de gestion de base de données relationnelle open source et, grâce à sa popularité, il est largement utilisé sur différents systèmes de stockage de données.

Dans cet article, vous en apprendrez plus sur la connexion à MySQL avec ou sans utilisateur root, la création de bases de données, la création d'utilisateurs, l'octroi de privilèges, l'accès externe à vos bases de données, l'importation d'une base de données, le vidage d'une base de données, etc. Commençons !

1. Mettre à jour le système

Nous supposons que vous avez une nouvelle installation d'Ubuntu 20.04 en tant que système d'exploitation et c'est pourquoi nous allons mettre à jour le système avant de commencer l'installation.

sudo apt update -y && sudo apt upgrade -y

2. Installer le serveur MySQL

Installez le serveur de base de données MySQL avec la commande suivante :

sudo apt install mysql-server -y

Une fois cette commande exécutée, le processus d'installation de MySQL 8.0 démarre. MySQL 8.0 est inclus par défaut dans le référentiel Ubuntu 20.04. Une fois l'installation terminée, vous pouvez vérifier si le service est opérationnel :

sudo systemctl status mysql

Vous devriez obtenir le résultat suivant :

root@vps:~# systemctl status mysql
● mysql.service - MySQL Community Server
     Loaded: loaded (/lib/systemd/system/mysql.service; enabled; vendor preset: enabled)
     Active: active (running) since Thu 2021-11-04 17:07:12 UTC; 39s ago
   Main PID: 98088 (mysqld)
     Status: "Server is operational"
      Tasks: 38 (limit: 4617)
     Memory: 355.4M
     CGroup: /system.slice/mysql.service
             └─98088 /usr/sbin/mysqld

3. Sécurisez le serveur MySQL

Avant de commencer à utiliser MySQL, nous devons le sécuriser en plusieurs étapes avec la commande suivante :

sudo mysql_secure_installation

Cette commande nous guidera à travers plusieurs étapes qui nous aideront à configurer la sécurité de notre MySQL, à définir un mot de passe root fort, etc. Vous devez utiliser les options en gras de la sortie ci-dessous :

root@vps:~# sudo mysql_secure_installation

Securing the MySQL server deployment.

Connecting to MySQL using a blank password.

VALIDATE PASSWORD COMPONENT can be used to test passwords
and improve security. It checks the strength of password
and allows the users to set only those passwords which are
secure enough. Would you like to setup VALIDATE PASSWORD component?

Press y|Y for Yes, any other key for No:  Y 

There are three levels of password validation policy:

LOW    Length >= 8
MEDIUM Length >= 8, numeric, mixed case, and special characters
STRONG Length >= 8, numeric, mixed case, special characters and dictionary                  file

Please enter 0 = LOW, 1 = MEDIUM and 2 = STRONG: 2
Please set the password for root here.

New password: YourStrongRootPassword

Re-enter new password:YourStrongRootPassword

Estimated strength of the password: 100
Do you wish to continue with the password provided?(Press y|Y for Yes, any other key for No) : Y
By default, a MySQL installation has an anonymous user,
allowing anyone to log into MySQL without having to have
a user account created for them. This is intended only for
testing, and to make the installation go a bit smoother.
You should remove them before moving into a production
environment.

Remove anonymous users? (Press y|Y for Yes, any other key for No) : Y
Success.


Normally, root should only be allowed to connect from
'localhost'. This ensures that someone cannot guess at
the root password from the network.

Disallow root login remotely? (Press y|Y for Yes, any other key for No) : Y
Success.

By default, MySQL comes with a database named 'test' that
anyone can access. This is also intended only for testing,
and should be removed before moving into a production
environment.


Remove test database and access to it? (Press y|Y for Yes, any other key for No) : Y
 - Dropping test database...
Success.

 - Removing privileges on test database...
Success.

Reloading the privilege tables will ensure that all changes
made so far will take effect immediately.

Reload privilege tables now? (Press y|Y for Yes, any other key for No) : Y
Success.

All done!

L'installation de MySQL sera maintenant sécurisée et nous pourrons continuer avec quelques commandes utiles dans les prochaines étapes

4. Connectez-vous au serveur MySQL avec et sans mot de passe root

Après une nouvelle installation de MySQL, vous pouvez vous connecter à l'invite MySQL en tapant uniquement "mysql ” sur la ligne de commande des serveurs sans MySQL pour demander le mot de passe root que vous avez configuré à l'étape précédente.

Après avoir tapé le "mysql ” vous serez connecté à l'invite MySQL.

root@vps:~# mysql
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 13
Server version: 8.0.27-0ubuntu0.20.04.1 (Ubuntu)

Copyright (c) 2000, 2021, Oracle and/or its affiliates.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql>

Il en sera de même si vous exécutez la commande suivante et appuyez sur Entrée sans saisir votre mot de passe :

mysql -u root -p

Pour configurer MySQL pour demander le mot de passe root, exécutez la commande suivante dans l'invite MySQL :

ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'YourStrongRootPassword';

Vous devriez voir l'entrée suivante après l'exécution

mysql> ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'YourStrongRootPassword';
Query OK, 1 rows affected (0.01 sec)

mysql

Maintenant, si vous essayez de vous connecter avec "mysql ", vous obtiendrez le message ci-dessous :

root@vps:~# mysql
ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO)

Vous devez utiliser la commande ci-dessous, avec votre mot de passe root précédemment défini :

mysql -u root -p

C'est à vous de décider si vous souhaitez utiliser un mot de passe pour la connexion root ou non. Si vous souhaitez accéder sans mot de passe, ignorez simplement cette étape et passez à autre chose.

5. Base de données, création d'utilisateurs et octroi de privilèges

Si vous répertoriez les bases de données dans l'invite MySQL avec la commande "show databases", vous obtiendrez les bases de données par défaut de MySQL :

mysql> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| mysql              |
| performance_schema |
| sys                |
+--------------------+
4 rows in set (0.01 sec)

Pour créer une base de données, exécutez la commande suivante :

Create database 'admin';

Une fois, il est créé vous pouvez lister à nouveau les bases de données :

mysql> show databases;
+--------------------+
| Database           |
+--------------------+
| admin              |
| information_schema |
| mysql              |
| performance_schema |
| sys                |
+--------------------+
5 rows in set (0.00 sec)

mysql>

Créons un utilisateur nommé "adminuser" et accordons des privilèges à la base de données "admin" avec un mot de passe.

CREATE USER 'adminuser'@'localhost' IDENTIFIED by 'YourStrongPassword';
 GRANT ALL PRIVILEGES ON admin* TO 'adminuser'@'localhost';
 FLUSH PRIVILEGES;
 EXIT;

Une fois, l'utilisateur de la base de données est créé avec des privilèges pour "admin ” base de données, vous pouvez facilement vérifier si tout est correctement configuré :

mysql -u adminuser -p

Vous ne devriez voir que le "admin " et la valeur par défaut "information_schema ” bases de données :

mysql> show databases;
+--------------------+
| Database           |
+--------------------+
| admin              |
| information_schema |
+--------------------+
2 rows in set (0.01 sec)

mysql>

6. Accès externe à l'utilisateur

Pour accorder l'accès à distance à l'utilisateur "adminuser " et notre "administrateur existant ” base de données exécutez la commande suivante :

GRANT ALL ON admin.* TO adminuser@'remote_ip_address' IDENTIFIED BY 'YourStrongPassword';

Si vous souhaitez que l'utilisateur se connecte à partir de n'importe quelle adresse IP, utilisez le % :

GRANT ALL ON admin.* TO adminuser@'%' IDENTIFIED BY 'YourStrongPassword';

7. Faire un dump de la base de données

Faire un vidage de la base de données n'a pas besoin de se connecter à l'invite MySQL. Cela peut être fait via le terminal de ligne de commande du serveur en utilisant le nom de l'utilisateur, la base de données et le mot de passe. Nous allons faire un dump de notre "admin base de données avec l'utilisateur root :

mysqldump -u root -p admin > dump.sql

Une fois le dump terminé vous pouvez lister pour vérifier si tout va bien

root@vps:/# mysqldump -u root -p admin > dump.sql
Enter password:
root@vps:/# ls -al
total 12
drwxr-xr-x  2 root root 4096 Nov  4 21:38 .
drwxr-xr-x 19 root root 4096 Oct 18 14:09 ..
-rw-r--r--  1 root root 1266 Nov  4 21:40 dump.sql

8. Importer le vidage de la base de données

Pour importer le dump de la base de données dans le "admin ” base de données avec l'utilisateur root, vous devez utiliser la commande suivante :

mysql -u root -p admin < dump.sql

Voici la syntaxe pour vider et importer la base de données :

mysqldump -u "database user" -p "database name" > "name of dump file".sql

mysql -u "database user" -p "database name" < "name of dumped database".sql

Veuillez noter que l'utilisateur de la base de données doit avoir des privilèges sur la base de données qui doit être vidée. L'utilisateur racine de MySQL a des privilèges pour vider et importer toutes les bases de données.

Félicitations, vous avez réussi à installer et à utiliser les commandes les plus importantes du serveur MySQL

Si vous souhaitez en savoir plus sur les commandes MySQL, n'hésitez pas à consulter leur documentation officielle. Bien sûr, si vous trouvez cela difficile, vous pouvez contacter notre support technique 24h/24 et 7j/7, et nos administrateurs installeront et configureront le serveur MySQL sur Ubuntu 20.04 pour vous.

Si vous avez aimé cet article sur l'installation et l'utilisation de MySQL sur Ubuntu 20.04, partagez-le avec vos amis sur les réseaux sociaux en utilisant les boutons à gauche ou laissez simplement une réponse ci-dessous. Merci.


Panels
  1. Comment installer MySQL sur Ubuntu 20.04

  2. Comment installer et utiliser Wine sur Ubuntu 20.04

  3. Comment installer MySQL sur Ubuntu 18.04

  4. Comment installer la base de données MySQL sur Ubuntu 20.04

  5. Comment installer MySQL sur Ubuntu 22.04

Comment installer et utiliser Kontact dans Ubuntu 20.04

Comment installer et utiliser iTunes sur Ubuntu 20.04

Comment installer et utiliser R sur Ubuntu

Comment installer MySQL 8.0 sur Ubuntu 18.04

Comment installer MySQL 8.0 sur Ubuntu 18.04

Comment installer et utiliser MySQL Workbench sur Ubuntu 18.04