>  기사  >  데이터 베이스  >  \"오류 코드: 1290. MySQL 서버가 --secure-file-priv 옵션...\"을 사용하여 실행되고 있습니다."를 수정하는 방법은 무엇입니까?

\"오류 코드: 1290. MySQL 서버가 --secure-file-priv 옵션...\"을 사용하여 실행되고 있습니다."를 수정하는 방법은 무엇입니까?

Linda Hamilton
Linda Hamilton원래의
2024-10-26 07:19:03357검색

How to Fix

오류 발생: MySQL 서버 보안 파일 권한 제한 명령문 실행

"오류 코드: 1290. MySQL 서버 INTO OUTFILE 명령을 사용하는 MySQL 문을 실행하려고 시도하는 동안 --secure-file-priv 옵션을 사용하여 실행 중이므로 이 문을 실행할 수 없습니다.

오류 원인:

secure-file-priv 옵션은 보안을 강화하기 위해 MySQL이 파일을 쓸 수 있는 디렉터리를 제한합니다. 기본적으로 이 옵션은 MySQL이 외부 디렉터리에 쓰는 것을 제한합니다.

즉시 해결 방법(비구성 변경):

이 문제를 해결하는 빠른 해결 방법은 다음을 식별하는 것입니다. MySQL이 파일을 쓸 수 있도록 허용된 디렉터리:

<code class="sql">mysql> SHOW VARIABLES LIKE "secure_file_priv";</code>

허용된 디렉터리를 확인한 후에는 INTO OUTFILE 문을 수정하여 이 디렉터리를 대상으로 사용하세요.

<code class="sql">SELECT *
FROM xxxx
WHERE XXX
INTO OUTFILE '/var/lib/mysql-files/report.csv'
    FIELDS TERMINATED BY '#'
    ENCLOSED BY '"'
    LINES TERMINATED BY '\n'</code>

영구 솔루션(구성 변경):

Windows:

  1. Windows 서비스에서 MySQL 서비스 설정으로 이동합니다.
  2. "서비스 설정" 섹션에 지정된 "my.ini" 파일을 엽니다.
  3. "[mysqld]" 그룹을 찾아 "secure-file-priv" 옵션을 추가하거나 수정합니다. 허용된 디렉터리를 지정합니다. 예:

    <code class="ini">[mysqld]
    secure-file-priv="C:/ProgramData/MySQL/MySQL Server 5.6/Uploads"</code>
  4. MySQL 서비스를 다시 시작합니다.

Linux:

  1. MySQL 구성을 엽니다. 파일은 일반적으로 "/etc/my.cnf" 또는 "/etc/mysql/my.cnf"에 있습니다.
  2. "[mysqld]" 그룹을 찾아 "secure- file-priv" 옵션을 사용하여 허용된 디렉터리를 지정합니다. 예:

    <code class="ini">[mysqld]
    secure-file-priv="/var/lib/mysql-files/"</code>
  3. MySQL 서비스를 다시 시작합니다.

위 내용은 \"오류 코드: 1290. MySQL 서버가 --secure-file-priv 옵션...\"을 사용하여 실행되고 있습니다."를 수정하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.