기술나눔

MySQL 가져오기 테스트 데이터

2024-07-12

한어Русский языкEnglishFrançaisIndonesianSanskrit日本語DeutschPortuguêsΕλληνικάespañolItalianoSuomalainenLatina

이는 운영 및 유지 관리 중에 종종 발생합니다. MySQL은 테이블 이름을 변경하고 데이터 없이 동일한 테이블을 생성하며 이전 테이블의 일부 데이터를 해당 테이블에 복사합니다.

테이블 이름 변경

RENAME TABLE old_table_name TO new_table_name;

이는 원래 테이블을 대체합니다.old_table_name다음으로 이름 바꾸기new_table_name

동일한 테이블 구조를 생성하지만 데이터는 포함하지 않습니다.

CREATE TABLE new_table LIKE old_table_name;

그러면 다음과 같은 파일이 생성됩니다.new_table구조가 다음을 기반으로 하는 새 테이블old_table_name구조이지만 데이터는 복사되지 않습니다.

이전 테이블의 여러 데이터를 새 테이블에 복사합니다.

INSERT INTO new_table SELECT * FROM old_table_name LIMIT number_of_rows;

이 시작됩니다old_table_name선택하기 전에number_of_rows조각데이터 삽입도착하다new_table 가운데.당신은number_of_rows원하는 것으로 교체복사행.

예상치 못한 문제를 방지하려면 이러한 작업을 수행하기 전에 데이터를 백업하십시오.확실하지 않다면 다음으로 시작하세요.테스트 환경에서 다음 명령을 사용해 보세요.

위의 모든 단계를 결합한 예는 다음과 같습니다.

  1. -- 假设原来的表名为 orders
  2. -- 第一步:重命名原来的表
  3. RENAME TABLE orders TO orders_backup;
  4. -- 第二步:创建一个新的空表,结构和原来的表一样
  5. CREATE TABLE orders LIKE orders_backup;
  6. -- 第三步:复制原表的前10条数据到新表中
  7. INSERT INTO orders SELECT * FROM orders_backup LIMIT 10;

이러한 작업은 MySQL 명령줄 도구나 SQL 인터페이스를 제공하는 데이터베이스 관리 도구에서 수행해야 합니다. 이러한 명령을 실행할 수 있는 충분한 권한이 있는지 확인하세요.