mysqldump如何针对某些数据库进行备份?针对某个数据库进行备份?

需求描述:

  通过mysqldump工具对mysql服务器中的某几个数据库进行备份.

  或者就对其中的一个数据库进行备份.

操作过程:

1.通过--databases参数后面加上数据库的名字进行备份

[mysql@redhat6 MysqlDb_Backup]$ mysqldump -uroot -p --single-transaction --master-data --flush-logs --databases top_server test01 > Backup_2018-04-09.sql
Enter password: 
[mysql@redhat6 MysqlDb_Backup]$ ls -ltr
total 2111792
-rw-rw-r-- 1 mysql mysql 2137635937 Apr  8 09:45 Full-Backup_On_2018-04-08.sql
-rw-rw-r-- 1 mysql mysql   24832086 Apr  9 11:26 Backup_2018-04-09.sql  #备份生成的SQL格式的dump文件

备注:使用--databases选项,后面接多个数据库,每个数据库之间用空格隔开.不能使用逗号.

如果使用逗号隔开,则报如下的错误:

[mysql@redhat6 MysqlDb_Backup]$ mysqldump -uroot -p --single-transaction --master-data --flush-logs --databases top_server,test01 > Backup_2018-04-09.sql
Enter password: 
mysqldump: Got error: 1049: Unknown database 'top_server,test01' when selecting the database

备注:如果多个数据库之间用逗号隔开,就会被当做是一个数据库名字来处理.

2.针对某一个,单独对某个数据库进行备份,--databases后面接一个数据库

[mysql@redhat6 MysqlDb_Backup]$ mysqldump -uroot -p --single-transaction --master-data --flush-logs --databases top_server> Backup_2018-04-09.sql
Enter password: 

或者,将--databases选项省略

[mysql@redhat6 MysqlDb_Backup]$ mysqldump -uroot -p --single-transaction --master-data --flush-logs top_server> Backup_2018-04-09.sql
Enter password:

备注:针对某一个数据库,这里是top_server数据库备份时,可以省略掉--databases选项.都能达到对数据库备份的目的.

 

文档创建时间:2018年4月9日11:30:38

posted @ 2018-04-09 11:32  Zhai_David  阅读(510)  评论(0编辑  收藏  举报