我们的服务器上有40个数据库。
我们希望使用mysqldump备份36个数据库。如何忽略mysqldump命令中剩下的4个数据库?对于mysqldump是否有任何选项可以忽略MySQL中备份的数据库?
我知道一般的mysqldump命令,但是它非常长。我只想忽略4个数据库,需要进行其余的dbs备份。
发布于 2013-02-20 09:18:57
我认为这是不可能的,但您可以尝试这些解决方案,您必须键入要转储的所有数据库的名称。
mysqldump -u root -password --databases db1 db2 db3 ... db36 > mydb_dump.sql如果解决办法有帮助,请告诉我。
发布于 2016-12-27 13:36:38
即使在这里有这么多优秀的答案,所以这篇文章只是想多加一个选择。在脚本中的2行以下,您可以使用服务器所有DB的备份而忽略一些DB。
DB_LIST=`mysql -Nse "SELECT GROUP_CONCAT(SCHEMA_NAME SEPARATOR ' ') FROM information_schema.SCHEMATA WHERE SCHEMA_NAME NOT IN ('mysql','information_schema','performance_schema','sys');"`
mysqldump -R -B $DB_LIST > BACKUPNAME.sql发布于 2019-06-09 14:19:07
从MySQL 5.7.8开始,您可以使用mysqlpump (与mysqldump不一样)如下:
mysqlpump --user=user --password --exclude-databases=db1,db2,db3,db4 --result-file=partial_backup.sql只需将db1,db2,db3,db4替换为您想要排除的四个数据库。
来源:MySQL服务器博客
https://dba.stackexchange.com/questions/35081
复制相似问题