Introduzione
In questo tutorial vediamo come installare MySQL 5.7 su Ubuntu 20.04 LTS Focal Fossa. MySQL è uno dei sistemi di gestione di database più comunemente utilizzati. Utilizza il concetto di database relazionali e ha un'architettura client/server. Può essere installato su vari sistemi operativi tra cui Windows, CentOS e Debian tra gli altri.
I passaggi seguenti descrivono come installare e configurare MySQL 5.7 su Ubuntu 20.04 LTS. Inizia con l'aggiunta del repository APT con i pacchetti per MySQL, quindi passa all'installazione e alla configurazione dei pacchetti.
Se desideri installare installare MySQL 5.7 su un server in remoto continua a leggere, altrimenti salta il primo paragrafo "Connessione al Server" e leggi il successivo.
Connessione al Server
Per accedere al server, è necessario conoscere l'indirizzo IP. Avrai anche bisogno dell'username e della password per l'autenticazione. Per connettersi al server come utente root digitare il seguente comando:
ssh root@IP_DEL_SERVER
Successivamente sarà necessario inserire la password dell'utente root.
Se non utilizzate l'utente root potete connettervi con un'altro nome utente utilizzando lo stesso comando, quindi modificare root con il vostro nome_utente:
ssh nome_utente@IP_DEL_SERVER
Successivamente vi verrà chiesto di inserire la password del vostro utente.
La porta standard per connettersi tramite ssh è la 22, se il vostro server utilizza una porta diversa, sarà necessario specificarla utilizzando il parametro -p, quindi digitare il seguente comando:
ssh nome_utente@IP_DEL_SERVER -p PORTA
Aggiungere il repository APT MySQL in Ubuntu
Ubuntu viene già fornito con i repository di pacchetti MySQL predefiniti. Per installare una versione differente di MySQL dobbiamo installare il seguente pacchetto:
sudo apt update
sudo apt install wget -y
wget https://dev.mysql.com/get/mysql-apt-config_0.8.12-1_all.deb
Una volta scaricato, installa il repository eseguendo il comando seguente:
sudo dpkg -i mysql-apt-config_0.8.12-1_all.deb
Nel prompt, scegli Ubuntu Bionic e fai clic su Ok.
Il prompt successivo mostra MySQL 8.0 scelto per impostazione predefinita. Scegli la prima opzione e fai clic su Ok.
Nel prompt successivo, seleziona il server MySQL 5.7 e fai clic su Ok.
Il prompt successivo seleziona MySQL5.7 per impostazione predefinita. Scegli l'ultima opzione Ok e fai clic su Ok.
Aggiornare il repository MySQL su Ubuntu
Esegui il comando seguente per aggiornare i pacchetti di sistema
sudo apt-get update
Ora cerca MySQL 5,7 usando apt-cache come mostrato di seguito:
sudo apt-cache policy mysql-server
mysql-server:
Installed: (none)
Candidate: 8.0.21-0ubuntu0.20.04.4
Version table:
8.0.21-0ubuntu0.20.04.4 500
500 http://ke.archive.ubuntu.com/ubuntu focal-updates/main amd64 Packages
500 http://ke.archive.ubuntu.com/ubuntu focal-security/main amd64 Packages
8.0.19-0ubuntu5 500
500 http://ke.archive.ubuntu.com/ubuntu focal/main amd64 Packages
5.7.31-1ubuntu18.04 500
500 http://repo.mysql.com/apt/ubuntu bionic/mysql-5.7 amd64 Packages
Come puoi vedere MySQl 5.7.31-1ubuntu18.04 appare nell'elenco.
Installare MySQL 5.7 su Linux Ubuntu 20.04
Avendo trovato MySQL 5.7 nel nostro sistema, installeremo il client MySQL 5.7, il server MySQL 5.7 con il comando seguente:
sudo apt install -f mysql-client=5.7.32-1ubuntu18.04 mysql-community-server=5.7.32-1ubuntu18.04 mysql-server=5.7.32-1ubuntu18.04
Premi il tasto y per avviare l'installazione di MySQL 5.7 su Ubuntu 20.04 Linux, dovresti visualizzare un output simile al seguente:
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following additional packages will be installed:
libgdbm-compat4 libmecab2 libperl5.30 libtinfo5 mysql-common mysql-community-client perl perl-modules-5.30
Suggested packages:
perl-doc libterm-readline-gnu-perl | libterm-readline-perl-perl make libb-debug-perl liblocale-codes-perl
The following NEW packages will be installed:
libgdbm-compat4 libmecab2 libperl5.30 libtinfo5 mysql-client mysql-common mysql-community-client mysql-community-server mysql-server perl perl-modules-5.30
0 upgraded, 11 newly installed, 0 to remove and 35 not upgraded.
Need to get 58.1 MB of archives.
After this operation, 361 MB of additional disk space will be used.
Do you want to continue? [Y/n] y
Immettere e reinserire la password di root quando richiesto.
Mettere in sicurezza MySQL 5.7 su Ubuntu 20.04
Esegui il comando seguente per proteggere MySQL
sudo mysql_secure_installation
Premi Invio. Quando viene richiesta la password, fornire la password di root impostata sopra.
Rispondi alle richieste come di seguito:
Enter current password for root (enter for none): <Enter password>
VALIDATE PASSWORD PLUGIN 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 plugin?
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
Please enter 0 = LOW, 1 = MEDIUM and 2 = STRONG: 1
Using existing password for root.
Estimated strength of the password: 25
Change the password for root ? ((Press y|Y for Yes, any other key for No) : d
Remove anonymous users? [Y/n] Y
Disallow root login remotely? [Y/n] Y
Remove test database and access to it? [Y/n] Y
Reload privilege tables now? [Y/n] Y
Thanks for using MariaDB!
Controllare la versione di MySQL.
Per confermare la versione installata, innanzitutto connettiti a MySQL con la password di root impostata:
mysql -u root -p
Esegui il comando seguente per visualizzare la versione
SELECT VERSION();
+-----------+
| VERSION() |
+-----------+
| 5.7.31 |
+-----------+
1 row in set (0.00 sec)
Creare un utente MySQL (opzionale)
Mentre sei ancora connesso a MySQL, esegui i seguenti comandi per creare un utente:
CREATE USER 'user'@'%' IDENTIFIED BY 'MyStrongPass.';
GRANT ALL PRIVILEGES ON * . * TO 'user'@'%';
FLUSH PRIVILEGES;
exit;
Abilitare l'accesso remoto MySQL (opzionale)
Per impostazione predefinita, l'accesso remoto a MySQL è disabilitato. Per abilitarlo dobbiamo modificare il file mysqld.cnf come di seguito:
sudo nano /etc/mysql/mysql.conf.d/mysqld.cnf
Cerca la riga "bind_address" e cambia come di seguito:
Salva e chiudi il file. Riavvia mysql:
sudo systemctl restart mysql
Se utilizzi il firewall UFW, consenti connessioni remote attraverso il firewall, specificando il tuo indirizzo dal quale ti connetterai:
sudo ufw allow from <remote_IP_address> to any port 3306
Per accedere al database da una macchina remota, eseguire il seguente comando:
mysql -u user -h database_server_ip -p
Conclusione
In questo tutorial abbiamo visto come installare con successo MySQL 5.7 su Ubuntu 20.04 LTS Focal Fossa.