Mysql
 sql >> Datenbank >  >> RDS >> Mysql

SELECT INTO OUTFILE-Berechtigung verweigert, aber der Benutzer kann in das Verzeichnis schreiben

Dies kann durch mysql-Benutzerberechtigungen verursacht werden.

Wie hier angegeben https://dba.stackexchange. com/questions/17029/cannot-output-mysql-data-to-file

Gehen Sie wie folgt vor, um sich selbst DATEI-Berechtigung zu erteilen:

  1. service mysql restart --skip-networking --skip-grant-tables
  2. mysql <hit enter>
  3. UPDATE mysql.user SET File_priv = 'Y' WHERE user='lea' AND host='localhost';
  4. exit
  5. service mysql restart

Der Linux-Benutzer kann eine Datei schreiben. Der mysql-Dienst kann jedoch von apparmor blockiert werden.

Überprüfen Sie diese Datei:/etc/apparmor.d/usr.sbin.mysqld .

Fügen Sie dort Ihren Projektordner hinzu:

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

Führen Sie abschließend ein

aus
sudo /etc/init.d/apparmor reload