mysqlimport 유틸리티를 사용하면 텍스트 파일에 저장된 데이터를 손쉽게 MySQL 테이블로 가져올 수 있습니다. 업로드 작업은 크게 세 단계로 진행되며, 각 단계를 자세히 살펴보겠습니다.
1단계: 테이블 생성
가장 먼저 데이터를 업로드할 대상 테이블이 필요합니다. CREATE TABLE 문을 사용하여 MySQL 테이블을 생성할 수 있습니다. 예를 들어 아래와 같이 'student_tbl'이라는 테이블을 만들었다고 가정해 보겠습니다.
mysql> DESCRIBE Student_tbl; +--------+-------------+------+-----+---------+-------+ | Field | Type | Null | Key | Default | Extra | +--------+-------------+------+-----+---------+-------+ | RollNo | int(11) | YES | | NULL | | | Name | varchar(20) | YES | | NULL | | | Class | varchar(20) | YES | | NULL | | +--------+-------------+------+-----+---------+-------+ 3 rows in set (0.06 sec)
테이블에는 RollNo(정수), Name(문자열), Class(문자열) 세 개의 컬럼이 정의되어 있습니다.
2단계: 데이터 파일 생성
다음으로, 가져올 데이터가 담긴 텍스트 파일을 준비해야 합니다. 이때 중요한 규칙이 두 가지 있습니다.
- 데이터 파일의 이름은 반드시 MySQL 테이블 이름과 동일해야 합니다.
- 각 필드는 탭(tab) 문자로 구분되어야 합니다.
따라서 위에서 만든 테이블에 맞춰 'student_tbl.txt'라는 이름의 데이터 파일을 다음과 같이 작성합니다.
1 Gaurav 10th 2 Rahul 10th 3 Digvijay 10th
3단계: mysqlimport로 데이터 업로드
데이터 파일이 준비되었으면, 아래 명령어를 사용하여 파일을 MySQL 테이블로 가져올 수 있습니다.
C:\mysql\bin>mysqlimport -u root query C:/mysql/bin/mysql-files/student_tbl.txt query.student_tbl: Records: 3 Deleted: 0 Skipped: 0 Warnings: 0
명령 실행 결과를 보면 총 3개의 레코드가 성공적으로 삽입되었고(Records: 3), 삭제·건너뜀·경고 없이 처리된 것을 확인할 수 있습니다.
업로드 결과 확인
마지막으로 SELECT 쿼리를 실행하여 데이터가 실제로 테이블에 정상적으로 저장되었는지 확인합니다.
mysql> Select * from student_tbl; +--------+----------+-------+ | RollNo | Name | Class | +--------+----------+-------+ | 1 | Gaurav | 10th | | 2 | Rahul | 10th | | 3 | Digvijay | 10th | +--------+----------+-------+ 3 rows in set (0.00 sec)
이처럼 mysqlimport를 활용하면 별도의 INSERT 문을 일일이 작성하지 않고도 텍스트 파일의 데이터를 빠르고 간편하게 MySQL 테이블에 대량으로 업로드할 수 있습니다.