【MySQL】备份和恢复

语法

mysqldump -uslave -p -h127.0.0.1 --set-gtid-purged=OFF database1 table1 table2 table3 >db.sql

摘录

导出整个数据库(包括数据库中的数据)
mysqldump -u username -p dbname > dbname.sql
 
 
导出某些库
mysqldump -uusername -ppassword --databases db1 db2 > db1db2.sql
 
 
导出数据库结构(不含数据)
mysqldump -u username -p -d dbname > dbname.sql
 
 
导出数据库中的某张数据表(包含数据)
mysqldump -u username -p dbname tablename > tablename.sql
 
 
导出数据库中的某张数据表的表结构(不含数据)
mysqldump -u username -p -d dbname tablename > tablename.sql
 
 
将备份文件压缩:
mysqldump -hhostname -uusername -ppassword --databases dbname | gzip > backup-file.sql.gz
 
 
导入数据库:
mysql> use target_dbname
mysql> source /mysql/backup/path/backup-file.sql
或
mysql target_dbname <backup-file.sql
 
 
用mysql命令恢复
mysql -uroot -ppassword db_name < /backup/mysql_bak.sql
如果是压缩的
mysql -uroot -ppassword db_name < `gzip -d /backup/mysql_bak.sql.gz`
 
 
for MyISAM
mysqldump --user=root --all-databases --flush-privileges --lock-all-tables \
--master-data=1 --flush-logs --triggers --routines --events \
--hex-blob >$BACKUP_DIR/full_dump_$BACKUP_TIMESTAMP.sql
 
 
for InnoDB
mysqldump --user=root --all-databases --flush-privileges --single-transaction \
--master-data=1 --flush-logs --triggers --routines --events \
--hex-blob >$BACKUP_DIR/full_dump_$BACKUP_TIMESTAMP.sql

猜你喜欢

转载自www.cnblogs.com/liudianer/p/11730407.html