Rezumat: în acest tutorial, veți învăța diferite motoare de stocare MySQL sau tipuri de tabele. Este esențial să înțelegeți caracteristicile fiecărui motor de stocare din MySQL, astfel încât să le puteți utiliza în mod eficient pentru a maximiza performanța bazelor de date.
MySQL oferă diverse motoare de stocare pentru tabelele sale, după cum urmează:
- MyISAM
- InnoDB
- MERGE
- MEMORY (HEAP)
- ARCHIVE
- CSV
- FEDERATED
Care motor de stocare are propriile avantaje și dezavantaje. Este esențial să înțelegeți caracteristicile fiecărui motor de stocare și să îl alegeți pe cel mai potrivit pentru tabelele dvs. pentru a maximiza performanța bazei de date. În următoarele secțiuni, vom discuta fiecare motor de stocare și caracteristicile sale, astfel încât să puteți decide pe care să îl utilizați.
MyISAM
MyISAM extinde fostul motor de stocare ISAM. Tabelele MyISAM sunt optimizate pentru compresie și viteză. De asemenea, tabelele MyISAM sunt portabile între platforme și sisteme de operare.
Dimensiunea tabelei MyISAM poate fi de până la 256TB, ceea ce este imens. În plus, tabelele MyISAM pot fi comprimate în tabele doar pentru citire pentru a economisi spațiu. La pornire, MySQL verifică dacă tabelele MyISAM sunt corupte și chiar le repară în caz de erori. Tabelele MyISAM nu sunt sigure pentru tranzacții.
Până la versiunea MySQL 5.5, MyISAM este motorul de stocare implicit atunci când creați o tabelă fără a specifica în mod explicit motorul de stocare. Începând cu versiunea 5.5, MySQL utilizează InnoDB ca motor de stocare implicit.
InnoDB
Tabele InnoDB suportă în totalitate compatibilitatea ACID și tranzacțiile. Ele sunt, de asemenea, optime pentru performanță. Tabelele InnoDB suportă chei străine, operațiuni de commit, rollback, roll-forward. Dimensiunea unui tabel InnoDB poate fi de până la 64TB.
Ca și MyISAM, tabelele InnoDB sunt portabile între diferite platforme și sisteme de operare. De asemenea, MySQL verifică și repară tabelele InnoDB, dacă este necesar, la pornire.
MERGE
Un tabel MERGE este un tabel virtual care combină mai multe tabele MyISAM care au o structură similară cu un singur tabel. Motorul de stocare MERGE este cunoscut și sub numele de motor MRG_MyISAM
. Tabelul MERGE
nu are indici proprii; în schimb, utilizează indici ai tabelelor componente.
Utilizând tabelul MERGE, puteți accelera performanța atunci când uniți mai multe tabele. MySQL vă permite doar să efectuați operații SELECT, DELETE, UPDATE și INSERT pe tabelele MERGE
. Dacă utilizați instrucțiunea DROP TABLE
pe un tabel MERGE
, este eliminată doar specificația MERGE
. Tabelele subiacente nu vor fi afectate.
Memorie
Tabelele de memorie sunt stocate în memorie și utilizează indexuri hash, astfel încât sunt mai rapide decât tabelele MyISAM. Durata de viață a datelor din tabelele de memorie depinde de durata de funcționare a serverului bazei de date. Motorul de stocare în memorie este cunoscut anterior sub numele de HEAP.
Archive
Motorul de stocare în arhivă vă permite să stocați un număr mare de înregistrări, care în scopul arhivării, într-un format comprimat pentru a economisi spațiu pe disc. Motorul de stocare a arhivelor comprimă o înregistrare atunci când este inserată și o decomprimă cu ajutorul bibliotecii zlib atunci când este citită.
Tabele de arhivă permit doar instrucțiuni INSERT și SELECT. Tabelele ARCHIVE
nu suportă indici, astfel încât este necesară o scanare completă a tabelei pentru citirea rândurilor.
CSV
Motorul de stocare CSV stochează datele în format de fișier CSV (comma-separated values). O tabelă CSV aduce o modalitate convenabilă de migrare a datelor în aplicații non-SQL, cum ar fi un software de foaie de calcul.
Tabela CSV nu acceptă tipul de date NULL. În plus, operația de citire necesită o scanare completă a tabelului.
FEDERATED
Motorul de stocare FEDERATED
vă permite să gestionați date de pe un server MySQL la distanță fără a utiliza tehnologia de cluster sau de replicare. Tabela federată locală nu stochează date. Atunci când interogați date dintr-un tabel federat local, datele sunt extrase automat din tabelele federate la distanță.
Choosing MySQL Table Types
Puteți descărca următoarea listă de verificare pentru a alege cel mai potrivit motor de stocare, sau tipul de tabel, pe baza diferitelor criterii.
MySQL Storage Engines Feature Summary
În acest tutorial, ați învățat diverse motoare de stocare sau tipuri de tabele disponibile în MySQL.
- A fost util acest tutorial?
- DaNu