GNU/Linux >> Linux の 問題 >  >> Linux

SELECT INTO OUTFILE 権限は拒否されましたが、ユーザーはディレクトリに書き込むことができます

これは、mysql ユーザー権限が原因である可能性があります。

ここに記載されているように https://dba.stackexchange.com/questions/17029/cannot-output-mysql-data-to-file

自分自身に FILE 権限を付与するには、次の手順を実行します:

<オール>
  • service mysql restart --skip-networking --skip-grant-tables
  • mysql <hit enter>
  • UPDATE mysql.user SET File_priv = 'Y' WHERE user='lea' AND host='localhost';
  • exit
  • service mysql restart
  • Linux ユーザーはできます ファイルを書き込みます。ただし、mysql サービスは apparmor によってブロックされる可能性があります。

    このファイルを確認してください:/etc/apparmor.d/usr.sbin.mysqld .

    そこにプロジェクト フォルダを追加します:

    /usr/sbin/mysqld {
        [...]
        /home/datam/xfers/online/ r,
        /home/datam/xfers/online/* rw
        [...]
    }
    

    最後に、

    を実行します。
    sudo /etc/init.d/apparmor reload
    

    最新のシステムでは、mariaDB と mysql が systemd サポートとともにインストールされます。とりわけ、/etc/systemd/system/mysql.service に次の設定があります:

    /home、/root、/run/user へのアクセスを禁止する

    ProtectHome=true

    それが /home への書き込みを妨げているのです。


    Linux
    1. 「mysql.sys@localhost」ユーザーの目的は何ですか

    2. Jenkins をインストールした後、ユーザー jenkins に su できません

    3. docker.sock 許可が拒否されました

    1. 実行可能ファイルと同じディレクトリに .so が見つかりませんか?

    2. 「localhost」を使用して MySQL に接続できませんが、「127.0.0.1」を使用しても問題ありませんか?

    3. Linux コンピューターから Active Directory ユーザー属性を一覧表示するにはどうすればよいですか?

    1. Howto MySQL:ユーザーを作成し、データベースに権限を付与します

    2. SELinux:「Config」ディレクトリに書き込めません! [OwnCloud]

    3. ユーザーアカウントとサービスアカウントの違いは?