Storage engine: differenze tra le versioni

Contenuto cancellato Contenuto aggiunto
Nuova pagina: Gli '''Storage Engine''', un tempo noti come '''Table Type''', sono librerie per MySQL e i suoi fork che implementano la gestione fisica dei dati. Alcuni dei co...
 
m fix wl
 
(26 versioni intermedie di 14 utenti non mostrate)
Riga 1:
GliIn [[informatica]] gli '''storage engine''', o '''Storagedatabase Engineengine''', un tempo noti come '''Tabletable Typetype''', sono [[Libreria (software)|librerie]] per [[MySQL]] e i suoi [[Fork (sviluppo software)|fork]] che implementano la gestione fisica dei dati. Alcuni dei compiti affidati agli Storagestorage Engineengine sono: scrittura dei record,e lettura dei [[record (database)|record]], indicizzazione, [[cache]], [[transazione (database)|transazioni]].
 
Gli Storagestorage Engineengine sono un tipo di [[plugin (informatica)|plugin]] per MySQL e i suoi fork. Alcuni sono distribuiti insieme a MySQL. Altri sono prodotti da terze parti. Vi sono anche Storagestorage Engineengine sviluppati per [[MariaDB]], che sfruttano le sue funzionalità specifiche e non funzionano necessariamente su MySQL. Alcuni sono attivi per [[default (informatica)|default]] e generalmente possono essere esclusi all'avvio o in fase di [[compilazione]]. Altri devono essere abilitati esplicitamente.
 
In pratica, scegliere uno Storagestorage Engineengine piuttosto che un altro significa modificare il modo in cui i dati vengono gestiti. Ad esempio [[InnoDB]] è molto performante e assicura un livello ragionevole di consistenza dei dati; [[MyISAM]] non supporta le transazioni, ma questo gli permette di semplificare le operazioni di lettura, rendendolo quindi adatto ai grandi [[datawaredata housewarehouse]]; [[MEMORYMemory (storage engine)|Memory]] scrive le tabelle in memoria ed è quindi indicato per le tabelle temporanee. Altri Storagestorage Engineengine possono implementare una gestione dei dati fuori dall'ordinario, dotando quindi il [[server]] di funzionalità completamente nuove. Ad esempio [[CassandraSE]] permette a MariaDB di interfacciarsi con [[Apache Cassandra]], [[CONNECT]] permette a [[MariaDB]] di uilizzareutilizzare i [[file]] di testo in diversi formati come [[Tabella (basi di dati)|tabelle relazionali]], mentre [[ShardQuery]], [[SpiderSE]] e [[ScaleDB]] implementano lo sharding dei dati in modi diversi.
 
== VociInterfaccia correlateSQL ==
MySQL e i suoi fork implementano una serie di istruzioni SQL che permettono di lavorare con gli storage engine.
 
=== Visualizzare gli storage engine installati ===
Per visualizzare gli storage engine installati:<syntaxhighlight lang="mysql">
SHOW STORAGE ENGINES;
</syntaxhighlight>Questo comando visualizza una tabella che elenca gli storage engine presenti e alcune delle loro caratteristiche. La colonna {{Codice|Engine}}, mostrata nell'output del comando, contiene il nome del plugin. La colonna {{Codice|Comment}} contiene una breve descrizione. La colonne {{Codice|Support}} indica se il server supporta lo storage engine. Ha tre valori possibili: {{Codice|DEFAULT}} significa che è supportato ed è quello utilizzato di default, quando si crea una tabella senza specificare l'engine da utilizzare; {{Codice|YES}} significa che è installato; {{Codice|NO}} significa che la libreria è presente ma non è stata installata. Le altre colonne indicano se lo storage engine fornisce o meno determinate funzionalità.
 
In alternativa è possibile interrogare la tabella {{Codice|PLUGINS}} nel database information_schema.
 
=== Installare e disinstallare gli storage engine ===
Perché un plugin possa essere installato, è necessario che la libreria si trovi nella directory dei plugin, cioè quella puntata dalla variabile {{Codice|plugin_dir}}.
 
Per installare un plugin:
<syntaxhighlight lang="mysql">
INSTALL PLUGIN nome_plugin SONAME 'nome_file';
</syntaxhighlight>
 
Per disinstallare un plugin:
<syntaxhighlight lang="mysql">
UNINSTALL PLUGIN nome_plugin;
</syntaxhighlight>
 
Con MariaDB, se lo storage engine è parte di una libreria di plugin, è possibile installare e disinstallare questi plugin con un unico comando:
<syntaxhighlight lang="mysql">
INSTALL SONAME 'nome_libreria';
</syntaxhighlight>
 
<syntaxhighlight lang="mysql">
UNINSTALL SONAME 'nome_libreria';
</syntaxhighlight>
 
Per aggiornare un plugin occorre disinstallarlo e reinstallarlo.
 
== Voci correlate ==
* [[MySQL]]
* [[MariaDB]]
* [[Percona]]
* [[Drizzle]]
 
== Collegamenti esterni ==
* [httphttps://dev.mysql.com/doc/refman/5.5/en/storage-engines.html Storage Enginesengine] nella documentazione di MySQL
* [https://web.archive.org/web/20130320073211/https://kb.askmonty.org/it/storage-engine/ Storagestorage Enginesengine] nella KnowledgeBase di MariaDB
 
{{Portale|software libero}}
* [http://dev.mysql.com/doc/refman/5.5/en/storage-engines.html Storage Engines] nella documentazione di MySQL
* [https://kb.askmonty.org/it/storage-engine/ Storage Engines] nella KnowledgeBase di MariaDB
 
[[Categoria: Software libero per base datiMySQL]]
[[Categoria:Software per base dati]]
[[Categoria:Librerie C++]]