Esplorazione dei Protocolli MySQL: X Protocol & Approfondimenti su Client/Server
X Protocol
Dalla versione 5.7.12 di MySQL è disponibile un nuovo X Plugin che espone un nuovo protocollo di comunicazione chiamato X Protocol. X Protocol fornisce una connettività più flessibile tra client e server. Migliora la sicurezza utilizzando standard di fiducia come TLS e SASL. È un nuovo protocollo MySQL che supporta SQL e CRUD.
Il nuovo protocollo per la connessione con il server ha una nuova utilità di comando per il lavoro interattivo con il server, una nuova API NoSQL con supporto CRUD, binding per Python, JavaScript, Node.js, Net e Java, oltre alla capacità di eseguire query asincrone.
Al momento, le funzionalità implementate del protocollo X sono prototipi per il test. Gli sviluppatori hanno grandi aspettative per queste e affermano che nei prossimi aggiornamenti il protocollo avrà estensioni API e binding con altri linguaggi. Il protocollo X sarà utilizzato per la replica e lo sharding, poiché il protocollo di streaming e una struttura delle query più rigorosa semplificano tali compiti. Può anche ridurre il numero di round trip utilizzando il pipelining e migliorare così le caratteristiche di prestazione.
Protocollo Client/Server MySQL
Il protocollo Client/Server MySQL è utilizzato nelle operazioni del server per creare, leggere, interpretare e inviare pacchetti di protocollo tra i Client MySQL e un Server MySQL. È implementato dai connettori, MySQL Proxy e la comunicazione tra server di replica master e slave.
Il protocollo supporta le seguenti funzionalità:
- Cifratura trasparente utilizzando SSL
- Compressione trasparente
- Fase di comando che viene utilizzata per accettare comandi dal server ed eseguirli
- Fase di connessione che esegue la configurazione della comunicazione SSL e l’autenticazione tra il client e il server
- Fase di autenticazione:
- Il client si connette al server
- Il server invia un pacchetto di handshake al client
- Il client invia un pacchetto di autenticazione
- Il server consente la transazione o recupera un messaggio di errore
- Fase di query
- Il client invia un pacchetto COM_*
- Il server invia uno dei seguenti: OK, Errore, EOF (End of File) o un result-set.
In seguito, il Suo MySQL o altri database contengono dati sensibili che devono essere sicuri e protetti? O ha bisogno di essere in linea con GDPR, SOX o HIPAA? Controlli il software di sicurezza e mascheramento dei dati di DataSunrise o scarichi la versione di prova.