>  기사  >  데이터 베이스  >  mysqldump로 데이터베이스 백업 시 특정 라이브러리를 제외하는 샘플 코드 상세 분석

mysqldump로 데이터베이스 백업 시 특정 라이브러리를 제외하는 샘플 코드 상세 분석

黄舟
黄舟원래의
2017-03-23 13:26:441454검색

다음 편집기는 mysqldump로 데이터베이스를 백업할 때 특정 라이브러리를 제외하는 예를 보여줍니다. 편집자님이 꽤 좋다고 생각하셔서 지금 공유하고 모두에게 참고용으로 드리고자 합니다.

참고:

mysqldump –all-databases를 사용하면 모든 라이브러리가 내보내집니다. 그러나 우리가 마스터-슬레이브이고 마스터 라이브러리에서 데이터를 덤프하는 경우 information_schema 및 mysql 라이브러리가 필요하거나 필요하지 않습니다. 데이터베이스가 적다면 /usr/local/mysql/bin/mysqldump -uroot -p --databases db1 db2 > 를 통해 내보낼 수도 있지만 데이터가 많으면 매우 번거로울 것입니다. 이렇게 지정합니다.

mysql은ignore-table을 지원하지만,ignore-database가 없기 때문에 information_schema와 mysql 라이브러리를 제외한 다른 모든 라이브러리를 내보내려면 데이터베이스를 하나씩만 지정할 수 있나요?

해결책:

# 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  -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에 대한 –skip-lock-tables 매개변수

위 내용은 mysqldump로 데이터베이스 백업 시 특정 라이브러리를 제외하는 샘플 코드 상세 분석의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.