> 안녕하세요.김윤찬입니다.
>
> 방대한 양의 데이터를 db에 저장하기 위해 mysqlimport 를 사용하려고
> 하는데 잘 되지 않습니다. 데이터베이스와 테이블을 먼저 생성한 다음에 mysqlimport를 사용하는 과정에서 막혀 있습니다.
> 구체적으로 shell에서 어떻게 명령을 주어야 하는지 모르겠습니다.
>
> 즐거운 하루 되세요 (((( *^_^* ))))
http://taejun.pe.kr/mysql/manual/12.txt
12. 2 텍스트 파일에서 데이터 입력(수입?)하기
mysqlimport 는 명령행 인터페이스에서 LOAD DATA INFILE sql 문을 제공한다. 대부분
의 옵션은 LOAD DATA INFILE 과 동일하다. 7.15 [Load] 참고.
다음과 같이 사용한다:
shell> mysqlimport [options] filename ...
명령행에서 지정한 텍스트 파일에 대하여, mysqlimport는 파일이름에서 확장자를 제거한다.
그리고 파일의 내용을 어떤 테이블에 넣을 것인지 결정하는데 사용한다. 예를 들어 vkdlfdlf
madl 'patient.txt', 'patient.text', 'patient'는 모두 patient라는 테이블 이름으로 입력될 것이
다.
mysqlimport 는 다음의 옵션을 지원한다:
-C, --compress : 서버, 클라이언트에서 압축을 지원하면 서버/클라이언트 사이에서 모든
정보를 압축한다
-#, --debug[=option_string] : 프로그램 사용 추적(디버깅용)
-d, --delete : 텍스트 파일에서 입력하기 전에 테이블을 비움
--fields-terminated-by=...
--fields-enclosed-by=...
--fields-optionally-enclosed-by=...
--fields-escaped-by=...
--fields-terminated-by=...
: LODA DATA INFILE 에서의 옵션과 동일한 기능을 갖는 옵션
-f, --force : 에러 생략.텍스트 파일을 위한 테이블이 없으면, 다른 남아있는 파일을 계속
처리(if a table for a text file doesn't exist, continue processing any remaining files) 이
옵션이 없는 경우, 테이블이 없으면 빠져나온다
--help : 도움말 출력
-h host_name, --host=host_name : 지정한 호스트의 mysql 서버에 데이타 입력. 기본값은
localhost
-i, --ignore : --replace 옵션의 정보 참고.
-l, --lock-tables : 텍스트 파일로 처리하기 전에 모든 테이블에 쓰기 락을 건다. 그러면 서
버에서 모든 테이블이 동기화될 수 있다.
-L, --local : 클라이언트에서 입력 파일 읽음. 기본적으로, localhost에서 접속하면 텍스트
파일은 서버에 있다고 가정된다.
-pyour_pass, --password[=your_pass] : 서버에 연결할 때 사용하는 비밀번호. '=your_pass
'를 지정하지 않으면 터미널에서 비밀번호를 물어봄
-P port_num, --port=port_num : 호스트에 연결할 때 사용하는 TCP/IP 숫자. (localhost가
아닌 호스트에서 접속할 때 사용. 예를 들어 유닉스 소켓을 사용하는 경우)
-r, --replace : --replace 와 --ignore 옵션은 unique key 값의 레코드가 중복되어 있을 경
우에 사용된다. --replcae 를 명시할 경우, 동일한 unique key 값을 가지고 있는 레코드를
대체한다. --ignore 를 명시할 경우, unique key 값이 동일한 레코드는 생략된다. 두 옵션
모두 명시하지 않는다면, 중복되는 키 갑이 발견되면 에러를 출력하고 텍스트 파일의 나머
지 부분은 생략이 된다.
-s, --silent : 침묵 모드. 에러가 발생했을 때만 출력.
-S /path/to/socket, --socket=/path/to/socket : 로컬호스트(기본 호스트값)에서 접속할 때
사용하는 소켓 파일.
-u user_name, --user=user_name : 서버에 연결할 때 사용하는 mysql 사용자 이름. 기본값
은 유닉스 로그인 이름.
-v, --verbose : Verbose 모드. 프로그램의 수행에 대한 상세한 정보 출력.
-V, --version : 버전 정보 출력.
|