>데이터 베이스 >MySQL 튜토리얼 >올바른 파일 권한에도 불구하고 MySQL SELECT INTO OUTFILE이 Errcode 13으로 실패하는 이유는 무엇입니까?

올바른 파일 권한에도 불구하고 MySQL SELECT INTO OUTFILE이 Errcode 13으로 실패하는 이유는 무엇입니까?

Barbara Streisand
Barbara Streisand원래의
2025-01-24 15:07:13651검색

Why Does MySQL SELECT INTO OUTFILE Fail with Errcode 13 Despite Correct File Permissions?

MySQL의 Outfile Errcode에 대한 선택 MySQL 문제 해결 13 : 기본 권한을 넘어서

를 사용하여 MySQL 데이터를 CSV로 내보내는 것은 권한 오류 인 Errcode 13에 의해 방해 할 수 있습니다. 파일 권한이 부족한 것은 일반적인 범인이지만, 최신 Ubuntu 서버 버전의 Apparmor의 보안 조치로 인해 올바른 디렉토리 권한이 있어도 문제가 지속됩니다. MySQL 권한에서 Apparmor의 역할 Linux 보안 모듈 인 Apparmor는 시스템 리소스에 대한 애플리케이션 액세스를 제한합니다. MySQL이 AppArmor 프로파일에서 실행되면 ( "/usr/sbin/mysqld"를 "Enforce Mode의 프로파일"에서 찾으려면) 쓰기 액세스가 제한 될 수 있습니다.

.

문제 해결 : AppArmor Access 부여 SELECT INTO OUTFILE MySQL이 특정 위치에 쓰도록 허용하려면 :

AppArmor 프로필 편집 : 편집을 위해 쓰기 권한 추가 :

대상 디렉토리에 읽기/쓰기 액세스 권한을 부여하는 줄 추가. 예를 들어 :

sudo aa-status

이것은 MySQL이 및 그 하위 디렉토리에서 읽고 쓸 수있게 해줍니다.

Reload AppArmor :

execute 변경 사항을 적용하려면
  1. 재시작 MySQL :

    MySQL 서비스를 다시 시작하십시오. 당신의 명령을 다시 시도하십시오. /etc/apparmor.d/usr.sbin.mysqld 중요한 보안 참고 :

    Apparmor를 통해 MySQL에 대한 쓰기 액세스 권한을 부여하는 의미를 신중하게 고려하십시오. 보안 위험을 최소화하기 위해 절대적으로 필요한 디렉토리에 대한 액세스 권한 만 부여합니다.

위 내용은 올바른 파일 권한에도 불구하고 MySQL SELECT INTO OUTFILE이 Errcode 13으로 실패하는 이유는 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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