MySQL 에서 파일의 데이터를 Load할 때 1290 에러가 발생하는 경우가 있습니다. MySQL 8에서는 로컬의 데이터를 입력할 때 보안상의 이유로 지정한 장소의 파일만 업로드가 가능합니다.
에러코드
Error Code: 1290. The MySQL server is running with the --secure-file-priv option so it cannot execute this statement
샘플 코드
# Load 가능한 폴더 확인 명령
SHOW VARIABLES LIKE 'secure_file_priv';
# 데이터 로드 명령
LOAD DATA INFILE "C:\\ProgramData\\MySQL\\MySQL Server 8.0\\Uploads\\sample.csv" INTO TABLE sample FIELDS TERMINATED BY ",";
적용 위치 수정방법
my.ini
파일을 보면 다음과 같이 적용가능한 위치가 나옵니다. 이를 수정하고 MySQL을 정지하고 재실행하면 됩니다.
# Secure File Priv.
secure-file-priv="C:/ProgramData/MySQL/MySQL Server 8.0/Uploads"
반응형
'데이타베이스 > MySQL' 카테고리의 다른 글
[mysql8] Ubuntu22에 mysql8 파일로 설치하는 방법 (1) | 2023.11.13 |
---|---|
[MySQL] 외래키 제약으로 인한 오류가 발생할 때 체크 끄는 방법 Cannot change column used in a foreign key constraint 오류 처리 (0) | 2022.12.29 |
[mariadb] DB: Index column size too large. The maximum column size is 767 bytes. 오류 수정 방법 (0) | 2021.07.01 |
[MariaDB] CentOS에 MariaDB 설치 및 사용자 생성 방법 (0) | 2020.10.05 |
[mysql][snippet] Load Data를 이용하여 파일 데이터 입력 (0) | 2017.08.24 |