明辉手游网中心:是一个免费提供流行视频软件教程、在线学习分享的学习平台!

具体区分mysqldump备份数据库时排除某些库的示例代码

[摘要]下面小编就为大家带来一篇mysqldump备份数据库时排除某些库的实例。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧说明:使用mysqldump –all-databases会导出所有库。但如果做主从,从主库dump出数据时,我们是不需要也不想要informatio...
下面小编就为大家带来一篇mysqldump备份数据库时排除某些库的实例。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧

说明:

使用mysqldump –all-databases会导出所有库。但如果做主从,从主库dump出数据时,我们是不需要也不想要information_schema 和 mysql 库的。数据库少的情况下还可以通过/usr/local/mysql/bin/mysqldump -uroot -p --databases db1 db2 > db1db2.sql 这样再导出,但如果数据多,这样指定就很麻烦了。

mysql是支持 ignore-table 的,但是没有ignore-database,所以要导出除 information_schema和mysql库的其它所有库,难道就只能一个个指定database吗?

解决:

# mysql -e "show databases;" -uroot -p  grep -Ev "Database information_schema mysql test"   xargs mysqldump -uroot -p --databases > mysql_dump.sql

附录:

附录1:

mysqldump: Got error: 1142: SELECT,LOCK TABL command denied to user ‘root'@'localhost' for table ‘cond_instances' when using LOCK TABLES

在mysql5.5中增加了performance_schema,当我们进行mysqldump的时候,会报如下错误信息

mysqldump: Got error: 1142: SELECT,LOCK TABL command denied to user ‘root'@'localhost' for table ‘cond_instances' when using LOCK TABLES

我们可以在mysqldump中加上参数 –skip-lock-tables,如

# mysqldump  -uroot  -p   --skip-lock-tables  performance_schema > performance_schema.sql 或者过滤掉performance_schema这个库
# mysql -e "show databases;"
 -uroot -p  grep -Ev "Database information_schema mysql test performance_schema"   xargs mysqldump -uroot -p --databases > mysql_dump.sql

以上就是具体分析mysqldump备份数据库时排除某些库的示例代码的详细内容,更多请关注php中文网其它相关文章!


学习教程快速掌握从入门到精通的SQL知识。