2009-06-18 6 views
0

나중에 관계를 복원 할 수있는 방식으로 두 개의 다른 테이블 (CATEGORY와 SUBCATEGORIES가 SUEGATEGORIES가 CATEGORY에 속함)에서 데이터를 백업하는 방법을 알고 싶습니다. mysqldump --opt db_name면 충분할지 모르겠습니다.관계를 보존하는 mysql 백업

예 :

카테고리 :

| ID | name 
----------- 
| 1 | Audio 
| 9 | Video 

하위 카테고리 :

| ID | category_id | name 
------------------------- 
| 1 | 1   | Guitar 
| 2 | 1   | Piano 
| 3 | 9   | Video Camera 

감사

+0

빅터 휴고가 말한 것처럼 관계는 일반 테이블 데이터로 표현되며 다른 것과 마찬가지로 덤프됩니다. 더 복잡한 다른 시나리오는 같은 strcuture의 다른 db와 병합하기 위해 데이터를 내 보내야하는 경우입니다. 이자형. 당신은 신분증을 지킬 수 없었습니다. 그런 다음 UUID (효율성을 위해 일반 int에 매핑 할 수 있음)를 사용하거나 사용자 정의 프로그램을 작성해야합니다. –

답변

1

mysqldump는 기본 테이블을 생성 명령을 추가하고이 관계를 저장합니다.

4

mysqldump는 그것은 데이터베이스를 다시 작성하는 데 필요한 SQL 코드를 생성하고 관계가 특수 데이터 (단지 논리적 우연의 일치 테이블 사이)하지 않은대로 백업 데이터베이스 충분

충분하다. --opt 매개 변수없이 mysqldump를 사용하는 경우에도 인덱스 정의가 추가되어 제약 조건이 유지됩니다.

관련 문제