Introducere

Importul și exportul bazelor de date reprezintă o sarcină comună în dezvoltarea software. Poți folosi dump-uri de date pentru a face backup și pentru a restaura informațiile tale. De asemenea, acestea pot fi utilizate pentru a migra datele către un nou server sau mediu de dezvoltare.

În acest tutorial vei lucra cu dump-uri de baze de date în MySQL sau MariaDB (comenzile sunt interschimbabile). Mai exact, vei exporta o bază de date și apoi vei importa acea bază de date din fișierul dump.

Cerințe Prealabile

Pentru a importa sau exporta o bază de date MySQL sau MariaDB, vei avea nevoie de:

  • O mașină virtuală cu un utilizator non-root care poate folosi sudo. Dacă ai nevoie de un server, accesați acest link pentru a crea un VPS cu distribuția Linux preferată. După creare, alege distribuția și urmează ghidul nostru de configurare inițială a serverului.

  • MySQL sau MariaDB instalat. Pentru instalarea MySQL, urmează tutorialul nostru „Cum se instalează MySQL”. Pentru instalarea MariaDB, urmează tutorialul „Cum se instalează MariaDB”.

  • O bază de date exemplu creată pe serverul tău de baze de date. Pentru a crea una, urmează secțiunea „Crearea unei baze de date exemplu” din tutorialul nostru „O introducere în interogări în MySQL”.

 


Pasul 1 — Exportul unei baze de date MySQL sau MariaDB

Utilitarul de consolă mysqldump exportă bazele de date în fișiere text SQL. Acest lucru face mai ușoară transferul și mutarea bazelor de date. Vei avea nevoie de numele bazei de date și de acreditările unui cont care dispune cel puțin de acces de citire completă asupra bazei de date.

Folosește mysqldump pentru a exporta baza de date:

mysqldump -u username -p database_name > data-dump.sql
  • username este numele de utilizator cu care te autentifici în baza de date

  • database_name este numele bazei de date ce urmează a fi exportată

  • data-dump.sql este fișierul din directorul curent unde va fi stocat output-ul

Comanda nu va produce niciun output vizual, însă poți inspecta conținutul fișierului data-dump.sql pentru a verifica dacă este un dump SQL valid.

Rulează următoarea comandă pentru a vedea primele linii ale fișierului:

head -n 5 data-dump.sql

La începutul fișierului ar trebui să vezi ceva asemănător cu următorul fragment, indicând un dump MySQL pentru o bază de date numită database_name:

-- MySQL dump 10.13 Distrib 5.7.16, for Linux (x86_64) -- -- Host: localhost Database: database_name -- ------------------------------------------------------ -- Server version 5.7.16-0ubuntu0.16.04.1

Dacă apar erori în timpul procesului de export, mysqldump le va afișa pe ecran.


Pasul 2 — Importul unei baze de date MySQL sau MariaDB

Pentru a importa un fișier dump existent într-o bază de date MySQL sau MariaDB, va trebui să creezi o nouă bază de date. Această bază de date va primi datele importate.

Mai întâi, autentifică-te în MySQL ca utilizator root sau ca alt utilizator cu suficiente privilegii pentru a crea baze de date:

mysql -u root -p

Această comandă te va aduce la promptul shell-ului MySQL. Apoi, creează o nouă bază de date cu următoarea comandă. În acest exemplu, noua bază de date se numește new_database:

CREATE DATABASE new_database;

Vei vedea un mesaj de confirmare care indică faptul că baza de date a fost creată:

 
Query OK, 1 row affected (0.00 sec)

Ieși din shell-ul MySQL apăsând CTRL+D. Din linia de comandă obișnuită, poți importa fișierul dump folosind comanda:

mysql -u username -p new_database < data-dump.sql
  • username este numele de utilizator cu care te autentifici în baza de date

  • new_database este numele bazei de date proaspăt create

  • data-dump.sql este fișierul dump ce urmează a fi importat, aflat în directorul curent

Dacă comanda se execută cu succes, nu va produce niciun output. În caz de erori, MySQL le va afișa în terminal. Pentru a verifica dacă importul a avut succes, autentifică-te în shell-ul MySQL și inspectează datele. Selectează noua bază de date folosind comanda:

USE new_database;

și apoi rulează comanda:

SHOW TABLES;

sau o comandă similară pentru a vizualiza unele dintre date.


Concluzie

În acest tutorial ai creat un dump al unei baze de date din MySQL sau MariaDB și apoi ai importat acel dump într-o nouă bază de date. Utilitarul mysqldump oferă setări suplimentare pe care le poți utiliza pentru a modifica modul în care sunt generate dump-urile de date. Poți afla mai multe detalii consultând pagina oficială de documentație mysqldump.

Răspunsul a fost util? 0 utilizatori au considerat informația utilă (0 Voturi)