====== Installation d'un serveur MySQL sous Ubuntu 19.10 ======
Sources:
* [[https://www.cyberpratibha.com/how-to-install-mysql-in-ubuntu/|How to install MySQL in Ubuntu 19.10]]
* [[https://support.rackspace.com/how-to/install-mysql-server-on-the-ubuntu-operating-system/|Install MySQL Server on the Ubuntu operating system]]
===== Installer le serveur =====
sudo apt install mysql-server
Vérifier que le serveur tourne :
sudo systemctl status mysql.service
● mysql.service - MySQL Community Server
Loaded: loaded (/lib/systemd/system/mysql.service; enabled; vendor preset: enabled)
Active: active (running) since Tue 2020-03-24 02:34:19 CET; 5min ago
Main PID: 20760 (mysqld)
Status: "Server is operational"
Tasks: 39 (limit: 4915)
Memory: 380.4M
CGroup: /system.slice/mysql.service
└─20760 /usr/sbin/mysqld
===== Sécurisation =====
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:
Sur une machine de développement, pour ne pas se compliquer la vie, répondre **N**.
>Please set the password for root here.
>
>New password:
>
>Re-enter new password:
Entrer un mot de passe pour **root**.
>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) :
Répondre **Y** pour ne pas autoriser les login anonymes.
>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) :
Répondre **Y** pour ne pas autoriser le login de **root** à distance.
>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) :
Répondre **Y** pour supprimer la base de données de test.
>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) :
Répondre **Y** pour recharger la table des privilèges.
>All done!
Tester l'accès :
sudo mysql -h localhost -u root -p
Taper **exit** pour sortir.