Home Area Tecnologica MySQL

MySQL

MySQL o Oracle MySQL è un Relational database management system (RDBMS) composto da un client a riga di comando e un server. Entrambi i software sono disponibili sia per sistemi Unix e Unix-like sia per Windows; le piattaforme principali di riferimento sono Linux e Oracle Solaris.

MySQL è un software libero, sviluppato per essere il più possibile conforme agli standard ANSI SQL e ODBC SQL.
I sistemi e i linguaggi di programmazione che supportano MySQL sono molto numerosi: ODBC, Java, Mono, .NET, PHPPython e molti altri.
Le piattaforme LAMP e WAMP incorporano MySQL per l’implementazione di server per gestire siti web dinamici, inoltre molti dei Content Management System di successo come WordPress, Joomla e Drupal nascono proprio con il supporto predefinito a MySQL.

Esistono diversi tipi di MySQL Manager, ovvero di strumenti per l’amministrazione di MySQL. Uno dei programmi più popolari per amministrare i database MySQL è phpMyAdmin che richiede un server web come Apache HTTP Server e il supporto del linguaggio PHP. Si può utilizzare facilmente tramite un qualsiasi browser.
In MySQL una tabella può essere di diversi tipi (o storage engine), uno dei più famosi è InnoDB

InnoDB è un motore per il salvataggio di dati (storage engine) per MySQL, fornito in tutte le sue distribuzioni. La sua caratteristica principale è quella di supportare le transazioni di tipo ACID (Atomicità, Consistenza, Isolamento e Durabilità).

InnoDB mette a disposizione le seguenti funzionalità:

  • transazioni SQL con savepoint e transazioni XA;
  • lock a livello di record;
  • chiavi esterne;
  • buffer per gli indici, le chiavi, modifiche, cancellazioni;
  • compressione delle tabelle.

Il lock in InnoDB per quanto riguarda i comandi SELECT è di tipo non-locking. InnoDB offre delle ottime performance in termini di prestazioni e utilizzo della CPU.