欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

【MySQL】备份和恢复

程序员文章站 2022-04-12 09:14:25
语法 摘录 ......

语法

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