2010-03-05 3 views
2

최근에 프로덕션 데이터베이스의 스키마를 개선하고 열 이름과 인덱스 등을 변경했습니다. 또한 트랜잭션과 외래 키를 사용하도록 저장소 엔진을 InnoDB로 변경했습니다.이전 스키마에서 새 스키마로 데이터 이전

이전 스키마의 데이터를 새 스키마로 가져 오는 가장 좋은 방법은 무엇입니까? 기본 키를 포함하여 열 이름이 변경되었음을 명심하십시오.

답변

1
  1. 열 이름을 변경 한 것처럼 파일을 만들고 가져올 수 있습니다.

    SELECT * FROM old-table INTO OUTFILE '/path/to/filename.txt' FIELDS TERMINATED BY ',' OPTIONALLY ENCLOSED BY '"' LINES TERMINATED BY '\n' 
    

    하고 당신이 할 수 LOAD 데이터 :

    LOAD DATA INFILE '/path/to/filename.txt' INTO TABLE new-table FIELDS TERMINATED BY ',' OPTIONALLY ENCLOSED BY '"' LINES TERMINATED BY '\n'; 
    

    참고 :

  2. 되어 나갈 rwise 가능한 경우 다음 열의 수가 동일 할 때까지 작업을 수행합니다. :

    old-table에서 새 테이블 select *에 삽입; 열 수는 다음 동일하지 않으면

    : 새로운 테이블을 선택 COL1, COL2,에

    삽입 ... 오래된 테이블;

관련 문제