반응형

MySQL/MariaDB 파일 읽기/쓰기시 발생할 있는 secure-file-priv 오류

 

·       Version : MySQL 5.7

 

MySQL에서 LOAD DATA SELECT.. INTO OUTFILE, LOAD_FILE() 함수를 사용할 경우, 아래와 같은 오류와 함께 실행이 실패되는 경우가 있다.

The MySQL server is running with the --secure-file-priv option so it cannot execute this statement

 

이러한 오류는 MySQL 시스템 설정 문제로, 보안과 관련이 있다. , MySQL 허용하는 경로의 위치에서만 파일을 읽고 있도록 지정된 것이며, 아래 스크립트를 통해서 현재 사용할 있는 경로를 확인할 있다.

SHOW VARIABLES LIKE "secure_file_priv"

 

결과가 NULL 경우 어떠한 경로도 지정되어 있지 않다는 뜻이며,  디렉터리 경로가 표시될 경우 해당 위치에서는 파일을 읽고 쓸수 있다는 뜻이다. 또한 아무 값이 표시되지 않으면, 어떠한 위치에서도 파일을 읽고 있다.

해당 값을 수정하기 위해서는 설정 파일에 아래 스크립트를 참고하며, 서비스 재시작이 필요하다. my.cnf 또는 my.ini mysqld 항목에 추가한다.

[mysqld]

secure-file-priv = ""

 

 

[참고자료]

https://dev.mysql.com/doc/refman/8.0/en/server-options.html#option_mysqld_secure-file-priv

 

 

2019-07-23 / 강성욱 / http://sungwookkang.com

 

MySQL, MySQL security, secure_file_priv, LOAD DATA, SELECT INTO OUTFILE, LOAD_FILE()

반응형

+ Recent posts