Cum pot Reduce dimensiunea unei baze de date MySQL?
software-ul de baze de date, cum ar fi MySQL, folosește adesea diverse tehnici pentru a accelera căutarea și livrarea oricăror informații solicitate. În majoritatea cazurilor, aceste tehnici iau forma unor baze de date temporare care sunt create pentru a servi ca intermediari și pentru a vă ajuta să preluați datele solicitate mai repede. Singurul dezavantaj al acestor baze de date suplimentare este că vor consuma spațiu suplimentar pe disc. În acest articol, vă vom arăta diferitele moduri în care puteți reduce dimensiunea bazei de date MySQL.
Cum pot reduce dimensiunea unei baze de date MySQL?
există două abordări generale pe care le puteți lua pentru a reduce dimensiunea unei baze de date MySQL. Puteți încerca fie optimizarea structurii bazei de date sau puteți șterge orice date inutile. Mai jos vom examina ambele tehnici în detaliu.
cum funcționează optimizarea pentru o bază de date MySQL?
după cum am menționat mai devreme, bazele de date MySQL creează adesea tabele interne într-un efort de a accelera interogările de căutare. Cu toate acestea, aceste tabele suplimentare devin mai puțin eficiente în timp, pe măsură ce adăugați date noi și modificați intrările existente. Ca atare, este o idee bună să vă optimizați baza de date din când în când. Nu numai că veți reduce dimensiunea generală a bazei de date, dar este posibil să vedeți și un impuls de performanță!
aveți două opțiuni atunci când vine vorba de optimizarea unei baze de date pe platforma noastră de Găzduire Partajată. Puteți utiliza fie Optimizatorul nostru cu 1 clic, care face parte din Managerul nostru de baze de date, fie puteți merge mai mult folosind instrumentele furnizate de phpMyAdmin.
cum optimizez o bază de date MySQL folosind Managerul de baze de date?
puteți optimiza cu ușurință și rapid toate tabelele dintr-o anumită bază de date MySQL datorită secțiunii Manager baze de date din panoul nostru de Control. Managerul de baze de date vă va fi disponibil dacă utilizați găzduirea gratuită a site-ului nostru web, găzduirea partajată premium sau unul dintre serverele noastre web Semi-dedicate. Pentru a optimiza baza de date, urmați acești pași:
- accesați secțiunea Manager baze de date din panoul nostru de Control.
- Faceți clic pe numele bazei de date pe care doriți să o optimizați.
- deschideți fila Gestionare.
- Faceți clic pe opțiunea intitulată optimizare cu 1 clic.
după ce efectuați acțiunile de mai sus, toate tabelele din Baza de date vor fi optimizate. Rețineți că statisticile noastre de utilizare a bazei de date nu sunt actualizate în timp real, astfel încât este posibil să nu observați o diferență imediată în utilizarea bazei de date. Pentru a afla mai multe despre diferitele caracteristici pe care managerul nostru de baze de date le poate oferi, Puteți parcurge ghidul nostru complet pentru managerul de baze de date.
cum optimizez tabelele unei baze de date MySQL folosind phpMyAdmin?
spre deosebire de managerul nostru de baze de date, care optimizează toate tabelele dintr-o singură lovitură, phpMyAdmin vă oferă un control mult mai granular atunci când vine vorba de tabelele care ar trebui optimizate și care tabele ar trebui să rămână neschimbate. Mai jos vom examina două tehnici pentru reducerea dimensiunilor tabelelor prin phpMyAdmin: opțiunea Optimizare, precum și comprimarea datelor din tabelele care utilizează motorul de stocare InnoDB.
în plus față de optimizarea tabelului, phpMyAdmin vă oferă o mulțime de alte opțiuni pe care le-ați putea găsi utile. Puteți afla mai multe despre acest utilitar la îndemână în prezentarea noastră generală phpMyAdmin.
Cum pot Reduce dimensiunea tabelului meu folosind caracteristica Optimizare în phpMyAdmin?
urmați pașii de mai jos pentru a optimiza tabelele din Baza de date MySQL utilizând funcția de optimizare din phpMyAdmin:
- deschideți secțiunea Manager baze de date din panoul de Control.
- Faceți clic pe numele bazei de date pe care doriți să o optimizați.
- deschideți fila Gestionare.
- Faceți clic pe opțiunea phpMyAdmin așa cum se arată mai jos:
- phpMyAdmin se va deschide acum într-o filă nouă și vi se va prezenta lista tabelelor care cuprind baza de date. Plasați marcajele în fața tabelelor pe care doriți să le optimizați.
- după ce ați făcut selecția, alegeți opțiunea Optimizați tabelul din meniul derulant. Opțiunea face parte din secțiunea de întreținere a tabelului:
- după ce selectați comanda Optimize table, aceasta va fi executată automat și ar trebui să vi se prezinte interogarea SQL a fost executată cu succes. mesaj:
un lucru de reținut este că opțiunea Optimize table efectuează acțiuni diferite în funcție de motorul de stocare pe care îl utilizează tabelele dvs. Ca atare, efectele opțiunii pot varia de la o masă la alta. Acest lucru este valabil mai ales dacă utilizați diferite motoare de stocare și dacă unele dintre tabelele dvs. suferă modificări regulate, în timp ce alte tabele rămân relativ neschimbate.
Cum pot comprima datele într-o bază de date MySQL?
după cum am menționat anterior, diferite motoare de stocare vin cu seturi de caracteristici diferite. O caracteristică remarcabilă a motorului de stocare InnoDB este capacitatea sa de a comprima datele fără pierderi de informații. Compresia este cea mai eficientă dacă tabelele dvs. au coloane care utilizează TEXT
, BLO
, VARCHAR
, și VARBINARY
tipuri de date.
pentru a rula compresia pe un tabel dat, trebuie mai întâi să vă asigurați că tabelul în cauză utilizează motorul de stocare InnoDB. Puteți găsi aceste informații în vizualizarea structurii bazei de date a phpMyAdmin. Această vizualizare este cel mai ușor accesată făcând clic pe numele bazei de date, așa cum se arată în captura de ecran de mai jos:
odată ce vă aflați în vizualizarea structură, ar trebui să vedeți o listă a tuturor tabelelor conținute în baza de date. Coloana care arată motorul de stocare curent se numește tip și este evidențiată mai jos:
dacă vedeți InnoDB listat ca motor de stocare pe tabelele pe care doriți să le comprimați, atunci sunteți bine să mergeți. Cu toate acestea, dacă vedeți orice altă valoare, va trebui să convertiți tabelul(tabelele) pentru a utiliza mai întâi motorul de stocare InnoDB. Conversia se face prin executarea unei comenzi SQL scurte. Pentru a începe, comutați la fila SQL din phpMyAdmin:
odată ajuns acolo, lipiți următorul cod:
ALTER TABLE my_table ENGINE = InnoDB;
asigurați-vă că înlocuiți my_table
cu numele tabelului pe care doriți să îl convertiți. În exemplul nostru, convertim un tabel numit orders
, astfel încât comanda noastră ar arăta astfel:
ALTER TABLE orders ENGINE = InnoDB;
după ce ați introdus comanda, faceți clic pe butonul Go din colțul din dreapta jos pentru a o executa. Dacă aveți succes, ar trebui să vi se prezinte un mesaj de succes ca cel prezentat mai jos:
dacă doriți să convertiți mai multe tabele în motorul de stocare InnoDB, va trebui să rulați comanda de mai sus pentru fiecare dintre ele.
acum că tabelele dvs. utilizează InnoDB, puteți continua cu compresia reală a datelor MySQL. Compresia în sine este o comandă SQL scurtă care trebuie executată și din fila SQL din phpMyAdmin. Iată comanda:
ALTER TABLE my_table ROW_FORMAT=COMPRESSED;
la fel ca în cazul conversiei tabelului, trebuie să înlocuiți my_table
cu numele real al tabelului. De exemplu, în captura de ecran de mai jos comprimăm tabelul numit orders
:
după ce ați introdus comanda de compresie, apăsați butonul Go pentru ao executa. Dacă doriți să comprimați mai multe tabele, puteți face acest lucru executând comanda SQL pentru fiecare tabel.
Cum șterg tabelele folosind phpMyAdmin?
cealaltă alternativă atunci când vine vorba de eliberarea spațiului de stocare este eliminarea datelor de care nu mai aveți nevoie din Baza de date. Puteți șterge intrări individuale sau tabele întregi.
pentru a șterge un tabel, accesați fila structură pentru baza de date, astfel încât să vedeți toate tabelele. De acolo, alegeți opțiunea Drop de lângă tabelul pe care doriți să îl ștergeți și confirmați alegerea. Verificați din nou dacă ați selectat tabelul corect înainte de a confirma ștergerea, deoarece această acțiune nu poate fi anulată.
dacă ștergerea unui întreg tabel de baze de date nu este o opțiune pentru dvs., atunci puteți lua în considerare eliminarea intrărilor individuale din diferite tabele de care nu mai aveți nevoie. Acest lucru poate fi realizat prin rularea diferitelor comenzi SQL. Mai jos, vom prezenta o comandă SQL foarte de bază care poate șterge o singură intrare în baza de date.
în acest exemplu, vom folosi tabelul de mai sus cu două rânduri. Scopul este de a elimina al doilea rând, păstrând în același timp primul.
veți observa că toate tabelele au de obicei o coloană id care conține un număr unic care identifică intrarea dată. În exemplul nostru, coloana id se numește de fapt id
, dar tabelele dvs. pot folosi un cuvânt diferit ca titlu al coloanei. După ce găsiți coloana care stochează identificatorii unici pentru fiecare intrare, notați valoarea asociată cu intrarea (rândul) pe care doriți să o ștergeți. Cu aceste informații la îndemână, comutați la fila SQL și executați următoarea comandă SQL:
DELETE FROM my_table where id_column = 'my_id';
în codul de mai sus va trebui să faceți trei înlocuiri:
-
my_table
ar trebui înlocuit cu numele tabelului din care ștergeți. -
id_column
trebuie înlocuit cu numele coloanei care stochează identificatorii dvs. unici. -
my_id
trebuie înlocuit cu identificatorul real pentru rândul pe care doriți să îl ștergeți.
exemplul nostru folosește tabelul products
. Acest tabel are o coloană id
și identificatorul unic pentru intrarea pe care dorim să o ștergem este 2
. Deci, comanda noastră SQL ar trebui să arate astfel:
când apăsăm butonul Go, comanda SQL este executată și ștergerea va fi finalizată. Acum tabelul nostru nu mai conține a doua intrare:
dacă utilizați un sistem modern de gestionare a conținutului, cum ar fi WordPress, Drupal, Joomla sau similar, ar trebui să luați în considerare utilizarea instrumentelor de administrare backend ale CMS pentru gestionarea și eliminarea datelor. Ștergerea manuală a intrărilor din Baza de date ar trebui să fie ultima soluție.
concluzie
ca proprietar de site web, este întotdeauna o idee bună să țineți cont de utilizarea bazei de date. Acest lucru este valabil mai ales dacă utilizați un plan de găzduire partajată și aveți un plafon pentru dimensiunea bazei de date. Dacă se întâmplă să atingeți limita de stocare, site-ul dvs. web poate începe să afișeze tot felul de avertismente și mesaje de eroare, cum ar fi mesajul „INSERT command denied to user”.