[mysql] MySQL에서 –secure-file-priv를 어떻게 해결해야합니까?

MySQL을 배우고 LOAD DATA절을 사용해 보았습니다 . 아래처럼 사용했을 때 :

LOAD DATA INFILE "text.txt" INTO table mytable;

다음과 같은 오류가 발생했습니다.

MySQL 서버가 –secure-file-priv 옵션으로 실행 중이므로이 명령문을 실행할 수 없습니다.

이 오류를 어떻게 해결합니까?

동일한 오류 메시지 에서 다른 질문을 확인 했지만 여전히 해결책을 찾을 수 없습니다.

MySQL 5.6을 사용하고 있습니다



답변

의도 한대로 작동합니다. MySQL 서버는 –secure-file-priv 옵션 으로 시작되었으며 기본적으로를 사용하여 파일을로드 할 수있는 디렉토리를 제한합니다 LOAD DATA INFILE.

SHOW VARIABLES LIKE "secure_file_priv";구성된 디렉토리를 보는 데 사용할 수 있습니다 .

두 가지 옵션이 있습니다.

  1. 에서 지정한 디렉토리로 파일을 이동하십시오 secure-file-priv.
  2. 비활성화합니다 secure-file-priv. 시작시 제거해야하며 동적으로 수정할 수 없습니다. 이렇게하려면 MySQL 시작 매개 변수 (플랫폼에 따라 다름)와 my.ini를 확인하십시오.

답변

나는 같은 문제가 있었다. 마침내 LOCAL명령 의 옵션을 사용하여 해결 했습니다.

LOAD DATA LOCAL INFILE "text.txt" INTO TABLE mytable;

자세한 정보는 여기 http://dev.mysql.com/doc/refman/5.7/en/load-data.html에서 찾을 수 있습니다.

LOCAL이 지정되면 클라이언트 호스트의 클라이언트 프로그램이 파일을 읽고 서버로 보냅니다. 파일은 정확한 위치를 지정하기 위해 전체 경로 이름으로 제공 될 수 있습니다. 상대 경로 이름으로 제공된 경우 이름은 클라이언트 프로그램이 시작된 디렉토리를 기준으로 해석됩니다.


답변

Ubuntu 14 및 Mysql 5.5.53에서이 설정은 기본적으로 활성화 된 것으로 보입니다. 비활성화하려면 secure-file-priv = ""mysqld 구성 그룹 아래의 my.cnf 파일에 추가 해야합니다. 예 :-

[mysqld]
secure-file-priv = ""


답변

Debian에서 MySQL5.7.11을 작업 중입니다. 디렉토리를 볼 수있는 명령은 다음과 같습니다.

mysql> SELECT @@global.secure_file_priv;


답변

Windows 7 secure-file-priv에서 vhu의 답변 에서 옵션 # 2 를 비활성화하는 데 도움이 된 것은 다음과 같습니다 .

  1. 로 이동하여 MySQL 서버 서비스를 중지하십시오 services.msc.
  2. C:\ProgramData\MySQL\MySQL Server 5.6( ProgramData내 경우에는 숨겨진 폴더였습니다)로 이동하십시오 .
  3. my.ini메모장 에서 파일을 엽니 다.
  4. ‘secure-file-priv’를 검색하십시오.
  5. 줄 시작 부분에 ‘#’을 추가하여 줄을 주석 처리하십시오. MySQL Server 5.7.16 이상에서는 주석이 작동하지 않습니다. 다음과 같이 빈 문자열로 설정해야합니다.secure-file-priv=""
  6. 파일을 저장하십시오.
  7. 로 이동하여 MySQL 서버 서비스를 시작하십시오 services.msc.

답변

파일이 머신에 로컬 인 경우 명령에 LOCAL 을 사용하십시오.

LOAD DATA LOCAL INFILE "text.txt" INTO table mytable;


답변

v

나는 SHOW VARIABLES LIKE "secure_file_priv";그것을 C:\ProgramData\MySQL\MySQL Server 8.0\Uploads\연결했고 그것을 꽂았을 때 여전히 작동하지 않았다.

my.ini 파일로 직접 이동했을 때 경로의 형식이 약간 다르다는 것을 발견했습니다. C:/ProgramData/MySQL/MySQL Server 8.0/Uploads

그런 다음 그것을 사용했을 때 효과가있었습니다. 유일한 차이점은 슬래시의 방향입니다.