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:

  1. accesați secțiunea Manager baze de date din panoul nostru de Control.
  2. Faceți clic pe numele bazei de date pe care doriți să o optimizați.
  3. deschideți fila Gestionare.
  4. Faceți clic pe opțiunea intitulată optimizare cu 1 clic.
puteți reduce dimensiunea bazei de date MySQL într-un singur clic datorită opțiunii de optimizare din Managerul nostru de baze de date.
puteți reduce dimensiunea bazei de date MySQL într-un singur clic datorită opțiunii de optimizare din Managerul nostru de baze de date.

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:

  1. deschideți secțiunea Manager baze de date din panoul de Control.
  2. Faceți clic pe numele bazei de date pe care doriți să o optimizați.
  3. deschideți fila Gestionare.
  4. Faceți clic pe opțiunea phpMyAdmin așa cum se arată mai jos:
puteți accesa cu ușurință utilitarul phpMyAdmin folosind un link din fila Management a managerului nostru de baze de date.
puteți accesa cu ușurință utilitarul phpMyAdmin folosind un link din fila Management a managerului nostru de baze de date.
  1. 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.
  2. 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:
/wp-conținut / încărcări/2020/03/reduce-mysql-baza de date-Dimensiune-3.png
/ WP-conținut/încărcări/2020/03/reduce-mysql-baza de date-Dimensiune-3.png
  1. 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:
succes! Tabelele selectate au fost optimizate cu succes.
succes! Tabelele selectate au fost optimizate cu succes.

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:

dacă faceți clic pe numele bazei de date din phpMyAdmin, veți ajunge la vizualizarea structură pentru baza de date.
dacă faceți clic pe numele bazei de date din phpMyAdmin, veți ajunge la vizualizarea structură pentru baza de date.

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:

phpMyAdmin folosește tipul de titlu de coloană nu atât de evident pentru a indica motorul de stocare pe care îl folosește fiecare tabel.
phpMyAdmin folosește tipul de titlu de coloană nu atât de evident pentru a indica motorul de stocare pe care îl folosește fiecare tabel.

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:

fila SQL din phpMyAdmin vă oferă libertatea de a rula orice comenzi SQL de care aveți nevoie.
fila SQL din phpMyAdmin vă oferă libertatea de a rula orice comenzi SQL de care aveți nevoie.

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:

 este posibil să vedeți un mesaj de succes diferit în funcție de conținutul tabelului dvs., dar, în general, ar trebui să arate similar cu acesta.
este posibil să vedeți un mesaj de succes diferit în funcție de conținutul tabelului dvs., dar, în general, ar trebui să arate similar cu acesta.

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:

compresia datelor MySQL poate părea complicată, dar este, de fapt, o simplă comandă SQL pe care trebuie să o executați.
compresia datelor MySQL poate părea complicată, dar este, de fapt, o comandă SQL simplă pe care trebuie să o executați.

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.

 dacă totul merge bine cu compresia, phpMyAdmin ar trebui să vă întâmpine cu un mesaj de succes similar cu acesta.
dacă totul merge bine cu compresia, phpMyAdmin ar trebui să vă întâmpine cu un mesaj de succes similar cu acesta.

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ă.

 phpMyAdmin folosește termenul Drop pentru a se referi la ștergerea unui întreg tabel.
phpMyAdmin folosește termenul Drop pentru a se referi la ștergerea unui întreg tabel.

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.

un tabel eșantion cu două intrări (rânduri). Vom elimina al doilea rând.
un tabel de probă cu două intrări (rânduri). Vom elimina al doilea rând.

î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:

o comandă SQL de bază pentru ștergerea unei intrări cu un identificator specific. Cu suficiente cunoștințe SQL puteți crea interogări complexe care șterg date pe baza mai multor criterii.
o comandă SQL de bază pentru ștergerea unei intrări cu un identificator specific. Cu suficiente cunoștințe SQL puteți crea interogări complexe care șterg date pe baza mai multor criterii.

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:

fii foarte atent atunci când se utilizează comanda DELETE! Mai presus de toate, asigurați-vă că ați localizat cu succes coloana care conține identificatorii unici pentru tabel.
fii foarte atent atunci când se utilizează comanda DELETE! Mai presus de toate, asigurați-vă că ați localizat cu succes coloana care conține identificatorii unici pentru tabel.

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”.

Leave a Reply

Adresa ta de email nu va fi publicată.