Come installare MySQL su Debian
Installare MySQL su Debian consente di creare un'infrastruttura di database (DB) solida e flessibile, adatta a una vasta gamma di applicazioni e servizi. MySQL è noto per la sua scalabilità, affidabilità e stabilità. Una volta configurato, migliora l'efficienza operativa e le prestazioni complessive dell'infrastruttura dati.
Questa combinazione è particolarmente utile per amministratori, analisti di database e settori che richiedono una soluzione affidabile per gestire grandi quantità di dati. Inoltre, le guide dettagliate di MySQL e la sua community semplificano la risoluzione dei problemi e l'ottimizzazione delle operazioni.
In questa guida mostreremo il processo completo per installare e configurare MySQL su Debian.
Come installare MySQL su Debian Copia link
I repository predefiniti di Debian non includono il pacchetto del server MySQL. Per installarlo su un sistema Linux, segui le istruzioni riportate di seguito. Scaricheremo la versione più recente di MySQL.
Passaggio 1: Scarica il pacchetto MySQL Copia link
Ottieni il pacchetto delle informazioni del repository MySQL in formato .deb:
wget https://dev.mysql.com/get/mysql-apt-config_0.8.30-1_all.deb
Nota: per verificare l'ultima versione disponibile, visita la pagina del repository MySQL.
Passaggio 2: Installa il pacchetto di configurazione MySQL Copia link
Utilizza il file .deb per avviare l'installazione con dpkg:
sudo dpkg -i mysql-apt-config_0.8.30-1_all.deb
Rispondi alle richieste a schermo. Ad esempio, seleziona "MySQL Server & Cluster" e premi Invio per avviare la configurazione.

Per scegliere una versione come mysql-8.4-lts, scorri verso il basso e conferma con OK.

Passaggio 3: Aggiorna il sistema Copia link
Aggiorna gli indici dei pacchetti del sistema per applicare le nuove informazioni di MySQL:
sudo apt update
Passaggio 4: Installa MySQL Copia link
Il gestore di pacchetti predefinito di Debian semplifica l’installazione. Esegui il seguente comando:
sudo apt install mysql-server -y
Apparirà un'interfaccia che ti chiederà di impostare una password per l’utente root. Inserisci una password sicura e conferma.

Verifica la versione installata:
mysql --version
Passaggio 5: Gestisci i servizi Copia link
Abilita l'avvio automatico del servizio MySQL all'accensione:
sudo systemctl enable mysqlAvvia il servizio:
sudo systemctl start mysqlControlla lo stato del servizio:
sudo systemctl status mysql
Prima di aprire la porta 3306 ai client, consulta la guida Creare un tunnel SSH per MySQL per imparare a proteggere l’accesso tramite SSH ed evitare di esporre MySQL direttamente su Internet.
Passaggio 6: Messa in sicurezza dell’installazione di MySQL Copia link
La password impostata all'inizio protegge l'utente root del server. MySQL include anche alcune impostazioni predefinite poco sicure, come l’accesso remoto all’utente root e ai database di test.
Per proteggere MySQL dopo l’installazione, usa il seguente script:
sudo mysql_secure_installation
Per attivare la verifica delle password (VALIDATE PASSWORD), digita Y e premi Invio.
Segui poi queste configurazioni:
-
Imposta una password sicura per l’utente root e verifica che sia corretta. Configura anche la politica delle password del server. Ad esempio, digita
2per accettare solo password complesse, quindi premi Invio. Se richiesto di cambiare la password root, digitaNper mantenere quella esistente oppureYper cambiarla. -
Elimina gli utenti anonimi: per maggiore sicurezza, digita
Ye premi Invio. -
Disabilita l’accesso remoto all’utente root: per evitare rischi, digita
Ye premi Invio. -
Rimuovi il database di test: per eliminarlo, digita
Ye premi Invio. -
Aggiorna le tabelle dei privilegi: premi Invio per applicare le modifiche.

Passaggio 7: Accedi a MySQL Copia link
Utilizza il client mysql per stabilire la connessione e accedere alla console del server MySQL.
sudo mysql -u root -pInserisci la password root per accedere alla shell e iniziare a eseguire comandi SQL.

Passaggio 8: Operazioni di base con MySQL Copia link
È buona prassi creare un database e un utente separato per le applicazioni, invece di usare root. Ecco i passaggi:
- Crea un database:
Per prima cosa, crea un database. Ad esempio, puoi creare uno chiamato hostmandb con il comando:
CREATE DATABASE hostmandb;
- Mostra tutti i database:
Per verificare che hostmandb sia stato creato correttamente, elenca tutti i database:
SHOW DATABASES;
- Crea un nuovo utente:
Crea un nuovo utente con una password sicura. In questo esempio, l’utente è minhal con la password Qwer@1234. Sostituisci questi valori con i tuoi:
CREATE USER 'minhal'@'localhost' IDENTIFIED BY 'Qwer@1234';
- Assegna i privilegi all’utente:
Concedi all’utente pieno accesso al database hostmandb:
GRANT ALL PRIVILEGES ON hostmandb.* TO 'minhal'@'localhost';
- Applica i privilegi:
Per rendere effettive le modifiche, ricarica i privilegi:
FLUSH PRIVILEGES;
- Esci dalla shell:
Chiudi la sessione della shell MySQL:
EXIT;
- Accedi alla console come nuovo utente:
Per testare l’accesso al database hostmandb, accedi come il nuovo utente minhal:
sudo mysql -u minhal -p
Dopo aver inserito la password di minhal, accederai alla console. Digita:
SHOW DATABASES;Passaggio 9: Configura l'accesso remoto Copia link
Per accedere a MySQL da remoto, configura il server seguendo questi passaggi:
- Apri il file di configurazione:
sudo nano /etc/mysql/mysql.conf.d/mysqld.cnf
- Trova la riga
bind-addresse modificala in:
bind-address = 0.0.0.0
- Riavvia MySQL:
sudo systemctl restart mysql
- Concedi l’accesso remoto all’utente:
sudo mysql -u root -pGRANT ALL PRIVILEGES ON hostmandb.* TO 'minhal'@'localhost';
FLUSH PRIVILEGES;
EXIT;
Passaggio 10: Configura il firewall Copia link
Se il firewall è attivo, devi aprire la porta 3306 per il traffico MySQL:
- Consenti il traffico MySQL:
sudo ufw allow mysql
- Attiva UFW:
sudo ufw enable
- Ricarica UFW:
sudo ufw reload
Passaggio 11: Backup e ripristino Copia link
Eseguire backup regolari è fondamentale per evitare la perdita di dati. Usa mysqldump per creare copie di sicurezza:
- Backup di un singolo database:
Questo comando utilizza mysqldump per creare una copia di backup del database hostmandb in un file chiamato hostmandb_backup.sql:
sudo mysqldump -u root -p hostmandb> hostmandb_backup.sql
- Backup di tutti i database:
Per creare un backup completo di tutti i database in un file chiamato all_databases_backup.sql, utilizza il seguente comando con i privilegi di root:
sudo mysqldump -u root -p --all-databases > all_databases_backup.sql
- Ripristina un database:
Ora puoi ripristinare il database hostmandb dal file di backup hostmandb_backup.sql:
sudo mysql -u root -p hostmandb < hostmandb_backup.sql
Passaggio 12: Ottimizza le prestazioni di MySQL (facoltativo) Copia link
A seconda del carico di lavoro e delle risorse del server, puoi modificare le impostazioni per ottenere prestazioni migliori.
- Aumenta la dimensione del buffer pool InnoDB:
Le cache per i dati e gli indici sono conservate nel buffer pool InnoDB. Aumentare le sue dimensioni può migliorare significativamente le prestazioni. Per farlo, modifica il file di configurazione di MySQL:
sudo nano /etc/mysql/mysql.conf.d/mysqld.cnfAggiungi o modifica la seguente riga:
innodb_buffer_pool_size = 1G
La dimensione deve essere regolata in base alla quantità di memoria disponibile sul server.
- Abilita la cache delle query:
La cache delle query memorizza i risultati delle interrogazioni SELECT. Abilitarla può migliorare le prestazioni nel caso di query ripetitive. Per abilitarla, modifica il file .cnf:
sudo nano /etc/mysql/mysql.conf.d/mysqld.cnfAggiungi o modifica le seguenti righe:
query_cache_type = 1
query_cache_size = 64M
- Ottimizza la struttura delle tabelle:
Ottimizza regolarmente la tabella customers del database hostmandb per recuperare spazio inutilizzato e migliorare l’efficienza:
USE hostmandb;
OPTIMIZE TABLE customers;
- Analizza le operazioni:
Le operazioni del database possono essere monitorate e analizzate con strumenti come MySQL Workbench o mysqltuner. Per installare mysqltuner, usa il comando:
sudo apt install mysqltuner
Esegui mysqltuner per ricevere suggerimenti di ottimizzazione:
sudo mysqltuner
Conclusione Copia link
Configurare un ambiente MySQL è essenziale nel mondo digitale odierno. Seguendo questa guida potrai installare e collegarti al tuo database MySQL in modo sicuro. Questa strategia non solo migliora la sicurezza ma facilita anche la gestione remota.
L'articolo fornisce istruzioni dettagliate per installare l'ambiente MySQL su Debian. È consigliabile monitorare e ottimizzare regolarmente i server MySQL per mantenere prestazioni e affidabilità elevate.
Inoltre, Hostman offre database cloud preconfigurati e pronti all’uso, incluso MySQL nel cloud.