ホームページ > データベース > mysql チュートリアル > SELECT INTO OUTFILE で MySQL エラーコード 13 (権限エラー) を修正する方法は?

SELECT INTO OUTFILE で MySQL エラーコード 13 (権限エラー) を修正する方法は?

Linda Hamilton
リリース: 2025-01-24 14:52:10
オリジナル
726 人が閲覧しました

How to Fix MySQL Errcode 13 (Permissions Error) with SELECT INTO OUTFILE?

MySQL Errcode 13 権限エラーと SELECT INTO OUTFILE ステートメントの解決

質問:

SELECT INTO OUTFILE を使用してテーブル データをサーバーのデフォルト ディレクトリ外の CSV ファイルにエクスポートしようとすると、アクセス許可と所有権を調整した後でもエラーコード 13 (アクセス許可エラー) が発生します。これは、Ubuntu システム、特に AppArmor を実行しているシステムで頻繁に発生します。

解決策:

1. AppArmor のステータスを確認します:

sudo aa-status コマンドを実行して、mysqld が強制モードであるかどうかを確認します。リストに表示される場合は、AppArmor が書き込み操作をブロックしている可能性があります。

2. AppArmor 構成ファイルを編集します:

/etc/apparmor.d/usr.sbin.mysqld ファイルを開き、ファイルの最後に目的のディレクトリ パスを追加し、読み取り/書き込み権限があることを確認します。例:

<code>/usr/sbin/mysqld {
    ...
    **/data/ r,
    /data/* rw,**
}</code>
ログイン後にコピー

3. AppArmor 構成ファイルをリロードします:

sudo /etc/init.d/apparmor reload コマンドを実行して変更を適用します。

4. クエリを再試行します:

AppArmor 構成ファイルをリロードした後、SELECT INTO OUTFILE クエリを再度試してください。これで、MySQL はターゲット ディレクトリに書き込むことができるようになります。

警告:

デフォルトの場所以外のディレクトリに MySQL 書き込み権限を付与すると、セキュリティに影響することに注意してください。機密データを保護するために適切な手段が講じられていることを確認してください。

以上がSELECT INTO OUTFILE で MySQL エラーコード 13 (権限エラー) を修正する方法は?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート