明輝手游網(wǎng)中心:是一個免費提供流行視頻軟件教程、在線學習分享的學習平臺!

具體區(qū)分mysqldump備份數(shù)據(jù)庫時排除某些庫的示例代碼

[摘要]下面小編就為大家?guī)硪黄猰ysqldump備份數(shù)據(jù)庫時排除某些庫的實例。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧說明:使用mysqldump –all-databases會導出所有庫。但如果做主從,從主庫dump出數(shù)據(jù)時,我們是不需要也不想要informatio...
下面小編就為大家?guī)硪黄猰ysqldump備份數(shù)據(jù)庫時排除某些庫的實例。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧

說明:

使用mysqldump –all-databases會導出所有庫。但如果做主從,從主庫dump出數(shù)據(jù)時,我們是不需要也不想要information_schema 和 mysql 庫的。數(shù)據(jù)庫少的情況下還可以通過/usr/local/mysql/bin/mysqldump -uroot -p --databases db1 db2 > db1db2.sql 這樣再導出,但如果數(shù)據(jù)多,這樣指定就很麻煩了。

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中加上參數(shù) –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備份數(shù)據(jù)庫時排除某些庫的示例代碼的詳細內容,更多請關注php中文網(wǎng)其它相關文章!


學習教程快速掌握從入門到精通的SQL知識。