MySQL 使用mysqldump 备份 表或者 库

MySQL 备份

 这里主要讲mysqldump,MySQL数据库自带的一个很好用的备份命令(5.7版本以上支持)

备份某个表

mysqldump -uroot -p'123456' travel city > tb_city.sql

备份整个库

mysqldump -u root  -p --databases sys > sys.sql

备份多个表

mysqldump -uroot -p'123456' travel tb1,tb2> tbs.sql

备份多个库

导出一个数据库 
[root@localhost ~]# mysqldump -uroot -p -P3306 --databases course > backup.sql

导出多个数据库 
[root@localhost ~]# mysqldump -uroot -p -P3306 --databases course test > course.sql 
[root@localhost ~]# mysqldump -uroot -p -P3306 -B course test > course.sql
导出所有数据库 
[root@localhost ~]# mysqldump -uroot -p -P3306 --all-databases > all.sql

仅导出course数据库的数据,不包括表结构 
[root@localhost ~]# mysqldump -uroot -p -P3306 --no-create-info course > course.sql

仅导出course数据库中的students和students_myisam两个表 
[root@localhost ~]# mysqldump -uroot -p -P3306 --no-create-info course students students_myisam > students.sql

仅导出course数据库的表结构 
[root@localhost ~]# mysqldump -uroot -p -P3306 --no-data course > course.sql

导出course数据库中除了teacher和score两个表的其他表结构和数据
 [root@localhost ~]# mysqldump -uroot -p -P3306 --ignore-table=course.teacher --ignore-table=course.score course > course.sql 
 
 导出course数据库的表和存储过程和触发器 
 [root@localhost ~]# mysqldump -uroot -p -P3306 --routines --triggers course > course.sql 
 
 导出course数据库中符合条件的数据 
 [root@localhost ~]# mysqldump -uroot -p -P3306 --where="sid in (1,2)" course students students_myisam > course.sql 
 
 远程导出course数据库 
 [root@localhost ~]# mysqldump -uroot -p -P3306 -h192.168.1.178 cmdb_v2 students_myisam > students.sql 
 
 在主库备份 
 [root@codis-178 ~]# mysqldump -uroot -p -P3306 --master-data=2 --single-transctions course > course.sql 
 (在备份开始之初,在所有表上加一个只读锁(flush table with read lock),当成功获取该锁并开始备份之后,此锁就会立即释放,后续dump过程不会影响其他的读写操作) 
 
 在从库备份 
 [root@codis-178 ~]# mysqldump -uroot -p -P3306 --dump-slave --single-transctions test > test.sql



发布了15 篇原创文章 · 获赞 2 · 访问量 1617

猜你喜欢

转载自blog.csdn.net/hi_zf/article/details/103634544