Ovim uputstvom objasnićemo nekoliko načina kako možete da izvezete MySQL bazu ili sve baze sa jednog servera i uvezete na nekom drugom serveru ili sačuvate bazu u fajl za backup.
Za izvoz baze koristićemo mysqldump komandu.
Sledećom komandom možete eksportovati jednu bazu sa nazivom mydatabase:
1 |
mysqldump -u mysqluser -p mydatabase > mysqldatabase.sql |
Ako želite da izvezete sve baze sa servera:
1 |
mysqldump -u root -p --all-databases > all-databases.sql |
Možete i da kompresujete izvezene baze:
1 |
mysqldump -u root -p --all-databases | gzip > all-databases.sql.gz |
Ukoliko Vaša baza koristi events i routines za izvoz koristićemo sledeći primer:
1 |
mysqldump -AER -u root -p > all-databases.sql |
Veoma zgodna komanda ukoliko je potrebno da izvezete sve baze pojedinačno (svaka baza u posebnom fajlu) osim sledećih baza information_shema, performance_schema i mysql:
1 |
mysql -s -r -u root -pRootLozinka -e 'show databases' | grep -v information_schema | grep -v performance_schema | grep -v mysql | while read db; do mysqldump -u root -pRootLozinka $db -r /root/${db}.sql; [[ $? -eq 0 ]] && gzip /root/${db}.sql; done |
Da uvezemo jednu bazu na drugi server:
1 |
mysql -u root -p mydatabase < mysqldatabase.sql |
Da uvezemo sve baze:
1 |
mysql -u root -p < all-databases.sql |
To bi bilo to. Sada znate kako da izvezete MySQL bazu u fajl i uvezete bazu na server.