Quando si lavora con ambienti di hosting basati su Linux, la gestione dei database tramite la riga di comando è un’abilità cruciale, soprattutto se si gestisce un server virtuale o un server dedicato senza interfaccia grafica. In questa guida vi spiegheremo come elencare tutti i database MySQL utilizzando il terminale. Sia che siate sysadmin esperti o proprietari di siti web che stanno imparando le regole, questo articolo vi copre.
Prima di immergerci nei comandi, esaminiamo rapidamente alcuni scenari in cui questo comando è utile:
Passiamo ora ai comandi veri e propri.
Per interagire con MySQL tramite la riga di comando, è necessario innanzitutto accedere alla shell di MySQL:
mysql -u root -p
suggerimento: se l’utente root di MySQL non ha una password (non è raccomandato per la produzione), si può ignorare -p.
Una volta entrati nella shell di MySQL, eseguite semplicemente:
SHOW DATABASES;
Vedrete un risultato simile a quello che segue:
-------------------- | Database -------------------- | information_schema | | mysql | performance_schema | | sys | | Nome_della_database --------------------
Ogni riga rappresenta un database memorizzato sul server MySQL. Alcuni di questi (come information_schema, performance_schema) sono database di sistema e non devono essere modificati.
Se si preferisce elencare i database direttamente dalla shell senza aprire il prompt di MySQL, si può utilizzare il comando
mysql -u root -p -e 'SHOW DATABASES;'
Questo è utile per le attività di scripting e automazione.
Per filtrare l’output e trovare nomi di database specifici, è possibile combinare il comando con grep:
mysql -u root -p -e 'SHOW DATABASES;' | grep your_keyword
Sostituire parola_chiave con una parte del nome del database. Questo trucco è utile quando si gestiscono più client o applicazioni.
Se siete curiosi di sapere dove si trova l’archivio fisico, i database MySQL sono in genere memorizzati in:
/var/lib/mysql/
Ogni cartella all’interno corrisponde al nome di un database. Non modificate o cancellate nulla manualmente, a meno che non sappiate esattamente cosa state facendo: utilizzate sempre i comandi SQL o gli strumenti di amministrazione.
sudo systemctl status mysql
sudo apt install mysql-client
Per elencare i database MySQL tramite la riga di comando su Linux:
Questo metodo è veloce, sicuro e funziona perfettamente in ambienti SSH: esattamente ciò che serve per una gestione efficace di server e database.