답변:
--no-data
mysqldump 명령으로 옵션을 사용할 수 있습니다
mysqldump -u root -p --no-data dbname > schema.sql
--single-transaction
테이블 잠금을 원하지 않거나 수행 할 수없는 경우 옵션 사용을 고려하십시오 .
CREATE DATABASE
명령 이 포함되지 않습니다 . 포함하려면, 대신 dbname
에 --databases dbname
(단축형 -B dbname
). 그런 다음 다른 서버로 가져 오려면mysql -u root -p < schema.sql
예, 다음 옵션 mysqldump
과 함께 사용할 수 있습니다 --no-data
.
mysqldump -u user -h localhost --no-data -p database > database.sql
--no-data
옵션으로 개별 테이블을 추출 할 수도 있습니다.
mysqldump -u user -h localhost --no-data -p database tablename > table.sql
MYSQL 관리자 도구를 무료로 사용할 수 있습니다 http://dev.mysql.com/downloads/gui-tools/5.0.html
MYSQL 데이터베이스를 내보내는 많은 옵션이 있습니다.
IntelliJ를 사용하는 경우 데이터베이스보기 (보기-> 도구 창-> 데이터베이스)를 사용할 수 있습니다.
해당 뷰 내부에서 데이터베이스에 연결하십시오. 그런 다음 데이터베이스를 마우스 오른쪽 단추로 클릭하고 "Copy DDL"을 선택하십시오. 다른 IDE도 비슷한 기능을 제공 할 수 있습니다.
모든 데이터베이스에서 모든 테이블을 덤프하고 데이터가없는 경우 (데이터베이스 및 테이블 구조 만) 다음을 사용할 수 있습니다.
mysqldump -P port -h hostname_or_ip -u username -p --no-data --all-databases > db_backup.sql
그러면 새로운 데이터베이스를 만들기 위해 mysql 서버에로드 할 수있는 .sql 파일이 생성됩니다. 이에 대한 유스 케이스는 프로덕션 환경에서는 많지 않지만 매주 데모 웹 사이트에 연결된 서버를 재설정하기 위해 매주 수행하므로 주중에 수행하는 모든 일, 일요일 밤에는 모든 것이 "새"로 롤백됩니다. )
쉘> mysqldump --no-data --routines --events 테스트> dump-defs.sql
mysqldump
는 최고의 답변입니다. MySQL 관리자는 버리고 MySQL Workbench는 여전히 버그가 많습니다.