
allow_local_infile 설정이 제한된 상황에서 로컬 파일을 임시 테이블로 로딩하는 방법은 다음과 같습니다.
1. LOAD DATA LOCAL INFILE 문을 사용하지 않습니다. 대신 LOAD DATA INFILE 문을 사용하여 로컬 파일을 로드합니다. 이 방법은 로컬 파일을 로드할 수 있지만, MySQL 서버가 로컬 파일을 직접 읽어야 하므로, MySQL 서버가 로컬 파일에 접근할 수 있는 권한이 있어야 합니다.
2. LOAD DATA INFILE 문에 LOCAL 키워드를 사용하지 않습니다. 대신 LOAD DATA INFILE 문에 @file 변수를 사용하여 로컬 파일을 로드합니다. 이 방법은 로컬 파일을 로드할 수 있지만, MySQL 서버가 로컬 파일을 직접 읽어야 하므로, MySQL 서버가 로컬 파일에 접근할 수 있는 권한이 있어야 합니다.
3. LOAD DATA INFILE 문에 HANDLER 옵션을 사용합니다. 이 방법은 로컬 파일을 로드할 수 있지만, MySQL 서버가 로컬 파일을 직접 읽어야 하므로, MySQL 서버가 로컬 파일에 접근할 수 있는 권한이 있어야 합니다.
4. LOAD DATA INFILE 문에 CONNECTION 옵션을 사용합니다. 이 방법은 로컬 파일을 로드할 수 있지만, MySQL 서버가 로컬 파일을 직접 읽어야 하므로, MySQL 서버가 로컬 파일에 접근할 수 있는 권한이 있어야 합니다.
로컬 파일을 임시 테이블로 로딩하는 과정에서 발생할 수 있는 오류를 처리하는 방법은 다음과 같습니다.
1. LOAD DATA INFILE 문에 IGNORE 키워드를 사용하여 오류를 무시합니다.
2. LOAD DATA INFILE 문에 ERRORS 옵션을 사용하여 오류를 기록합니다.
3. LOAD DATA INFILE 문에 CONNECTION 옵션을 사용하여 오류를 기록합니다.
4. LOAD DATA INFILE 문에 HANDLER 옵션을 사용하여 오류를 기록합니다.
예를 들어, 로컬 파일을 임시 테이블로 로딩하는 방법은 다음과 같습니다.
#hostingforum.kr
sql
LOAD DATA LOCAL INFILE '/path/to/file.csv'
INTO TABLE temp_table
FIELDS TERMINATED BY ','
ENCLOSED BY '"'
LINES TERMINATED BY 'n'
IGNORE 1 ROWS;
이 방법은 로컬 파일을 로드할 수 있지만, MySQL 서버가 로컬 파일을 직접 읽어야 하므로, MySQL 서버가 로컬 파일에 접근할 수 있는 권한이 있어야 합니다.
2025-08-12 12:10