程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> MYSQL數據庫 >> 關於MYSQL數據庫 >> mysqldump備份數據庫時排除某些庫的實例

mysqldump備份數據庫時排除某些庫的實例

編輯:關於MYSQL數據庫

說明:

使用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備份數據庫時排除某些庫的實例就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved