MySQL è un sistema open source di gestione di database relazionali SQL sviluppato e supportato da Oracle.

Questa è la risposta breve, di una sola frase, alla domanda “cosa è MySQL”, ma scomponiamola in termini un po’ più comprensibili.

Un database è solo una raccolta strutturata di dati, organizzata al fine di un facile utilizzo e recupero dei dati stessi. Per un sito WordPress, quei “dati” sono cose come il testo degli articoli del vostro blog, informazioni per tutti gli utenti registrati sul vostro sito, dati a caricamento automatico, configurazioni di impostazioni importanti, ecc.

MySQL è solo un sistema popolare in grado di archiviare e gestire tali dati per voi ed è una soluzione di database popolare soprattutto per i siti WordPress.

Lettura suggerita: Come Risolvere l’Errore “MySQL Server Has Gone Away” in WordPress e Come Correggere l’Errore MySQL 1064.

Andiamo un po’ più a fondo.

Che Cos’è MySQL? Più in Dettaglio

MySQL è stato rilasciato nel lontano 1995. Da allora, ha subito un paio di cambiamenti nella proprietà/amministrazione, prima di finire alla Oracle Corporation nel 2010. Sebbene sia ora in carica Oracle, MySQL è ancora un software open source, il che significa che potete utilizzarlo e modificarlo liberamente.

Logo MySQL

Logo MySQL (origine immagine: MySQL/Oracle)

Il nome deriva da “My” – il nome della figlia del co-fondatore – con SQL – l’abbreviazione di Structured Query Language, che è un linguaggio di programmazione che consente di accedere e gestire i dati in un database relazionale.

Per capire come funziona MySQL, è importante apprendere due concetti collegati:

Database relazionali

Quando si tratta di archiviare dati in un database, esistono diversi possibili approcci.

MySQL opta per un approccio chiamato database relazionale.

Con un database relazionale, i vostri dati vengono suddivisi in più aree di archiviazione separate, chiamate tabelle, piuttosto che raggruppare tutto in un’unica grande unità di archiviazione.

Ad esempio, supponiamo che vogliate archiviare due tipi di informazioni:

Se cercaste di raggruppare tutti questi dati in un unico grande recipiente, avreste vari problemi, come:

Per risolvere questi problemi, un database relazionale utilizzerebbe una tabella per i clienti e un’altra tabella per gli ordini.

Tuttavia, probabilmente vorresti anche poter dire “mostrami tutti gli ordini per John Doe”. È qui che entra in gioco la parte relazionale.

Utilizzando una cosa chiamata “chiave”, siete in grado di collegare i dati di queste due tabelle in modo da manipolare e combinare i dati in diverse tabelle in base alle necessità. È importante notare che una chiave non è il nome del cliente. È, invece, qualcosa di unico al 100%, come un ID numerico.

Se avete mai dato un’occhiata al database del vostro sito WordPress, avrete visto che utilizza questo modello relazionale, e tutti i vostri dati sono divisi in tabelle separate.

Di default, WordPress utilizza 12 tabelle separate, ma molti plugin di WordPress aggiungeranno anche proprie tabelle. Ad esempio, il database del sito WordPress mostrato di seguito ha 44 diverse tabelle!

Un esempio di tabelle in MySQL

Un esempio di tabelle in MySQL

Per concludere con il concetto di relazionale, parliamone specificamente per WordPress…

WordPress memorizza gli articoli del blog nella tabella wp_posts e gli utenti nella tabella wp_users. Tuttavia, dato che queste due tabelle sono collegate da una chiave, è possibile collegare ciascun account utente a tutti i post del blog scritti da ognuno.

Ecco come appare nel database.

Ad ogni post viene assegnato un post_author, che è un numero identificativo univoco (questa è la chiave):

Un esempio di tabelle in MySQL

Un esempio di tabelle in MySQL

Quindi, se volete vedere quale account utente corrisponde a quel numero, potete cercare l’ID nella tabella wp_users:

La tabella wp_users

La tabella wp_users

La chiave – il numero ID – è ciò che collega tutto. Ed è così che sono “correlati” tra loro, nonostante l’archiviazione dei dati avvenga in tabelle separate.

Modello Client-Server

Oltre ad essere un sistema di database relazionale, MySQL utilizza anche una cosa chiamata modello client-server.

Il server è il posto dove risiedono effettivamente i vostri dati. Per accedere a questi dati, tuttavia, è necessario richiederli. Ecco dove entra in gioco client.

Utilizzando SQL – il linguaggio di programmazione che abbiamo menzionato in precedenza – il client invia una richiesta al server del database per ricevere i dati di cui ha bisogno.

Ad esempio, se qualcuno visita un articolo del blog sul vostro sito, il sito WordPress invierà più richieste SQL al server del database per ottenere tutte le informazioni necessarie per consegnare l’articolo al browser di quel visitatore. Sarebbe:

Se volete vedere esattamente quali tipi di richieste al database vengono fatte dal vostro sito WordPress, potete utilizzare un meraviglioso plugin gratuito chiamato Query Monitor, che mostra l’interazione esatta tra il vostro sito WordPress (il client) e il server del database:

Alle prese con i tempi di inattività e problemi di WordPress? Kinsta è la soluzione di hosting progettata per farvi risparmiare tempo! Scopri i nostri servizi
Il plugin Query Monitor mostra le singole query SQL trasmesse al server MySQL

Il plugin Query Monitor mostra le singole query SQL trasmesse al server MySQL

Un’altra soluzione premium che potete usare è New Relic. I nostri ingegneri utilizzano questo strumento frequentemente per risolvere problemi di prestazioni su un sito WordPress che potrebbero essere dovuti a una query MySQL lenta.

la pagina databases di New Relic mostra le tabelle lente del database

Se il vostro sito WordPress non è in grado di accedere al server del database, il attiva il frequente messaggio di errore nello stabilire una connessione al database.

Kinsta Utilizza MariaDB, Non MySQL: Qual è la Differenza?

Qui da Kinsta, utilizziamo un database system chiamato MariaDB, non MySQL. Tuttavia, le stesse caratteristiche di MySQL si applicano anche a MariaDB.

In realtà, MariaDB è un fork di MySQL e lo sviluppatore principale di MariaDB è uno dei fondatori originali di MySQL. Un “fork” significa solo che gli sviluppatori di MariaDB hanno preso il codice MySQL originale open source come base e quindi si sono basati su quel codice per creare MariaDB.

Quindi, sebbene abbia un nome diverso, MariaDB è strettamente collegato a MySQL e offre la completa capacità di sostituzione “drop-in” (ovvero, è possibile passare senza problemi da MySQL a MariaDB senza dover prendere particolari precauzioni).

Tuttavia, anche se MariaDB offre piena interoperabilità con MySQL, offre anche prestazioni migliorate in alcune aree, che sono in linea con la nostra filosofia di utilizzare l’architettura più performante per dare potenza ai vostri siti WordPress.

Info

Tutti i piani di Kinsta prevedono l’ottimizzazione automatica settimanale del database MySQL per garantire migliori prestazioni a MariaDB. Dai un’occhiata ai nostri piani per maggiori informazioni.

Kinsta utilizza MariaDB, un fork di MySQL, per garantire le migliori prestazioni per il tuo sito WordPress. 🚀Click to Tweet

Riepilogo: Cosa è MySQL?

MySQL è un sistema open source di gestione di database relazionali. Per i siti WordPress, ciò significa che vi aiuta a memorizzare tutti gli articoli del vostro blog, gli utenti, le informazioni sui plugin, ecc.

Dunque archivia tali informazioni in “tabelle” separate e le collega con “chiavi”, da cui l’aggettivo relazionale.

Quando il vostro sito WordPress deve accedere a tali informazioni, invia una richiesta al server del database MySQL utilizzando SQL (questo è il modello client-server).

Kinsta usa MariaDB, non MySQL. Tuttavia, MariaDB è un fork di MySQL di uno dei co-fondatori di MySQL e offre l’interoperabilità di sostituzione drop-in, nonché alcuni miglioramenti delle prestazioni. Pertanto, tutti i concetti chiave di questo articolo si applicano anche a MariaDB.

Se siete ospitati su Kinsta, offriamo sia accesso diretto al database, sia la possibilità di utilizzare strumenti di gestione del database come phpMyAdmin.


Se ti è piaciuto questo tutorial, allora apprezzerai molto il nostro supporto. Tutti i piani di hosting di Kinsta includono supporto 24/7 da parte dei nostri sviluppatori e tecnici veterani di WordPress. Chatta con lo stesso team che supporta i nostri clienti Fortune 500. Scopri i nostri piani