MySQL Backup and Restore

Backing up and restoring MySQL databases

mysqldump - Single Database

mysqldump -u root -p database_name > backup.sql # backup database

mysqldump - All Databases

mysqldump -u root -p --all-databases > all_databases.sql # backup all

mysqldump - Specific Tables

mysqldump -u root -p database_name table1 table2 > tables.sql # specific tables

Restore Database

mysql -u root -p database_name < backup.sql # restore from backup

Compressed Backup

mysqldump -u root -p database_name | gzip > backup.sql.gz # compressed backup
gunzip < backup.sql.gz | mysql -u root -p database_name # restore compressed

Export to CSV

SELECT * FROM users
INTO OUTFILE '/tmp/users.csv'
FIELDS TERMINATED BY ','
ENCLOSED BY '"'
LINES TERMINATED BY '\n'; # export to CSV