sql >> Databáze >  >> RDS >> Mysql

Oprávnění SELECT INTO OUTFILE odepřeno, ale uživatel může zapisovat do adresáře

To může být způsobeno uživatelskými oprávněními mysql.

Jak je uvedeno zde https://dba.stackexchange. com/questions/17029/cannot-output-mysql-data-to-file

Chcete-li si udělit oprávnění FILE, proveďte následující:

  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

Uživatel linuxu může napsat soubor. Ale služba mysql může být blokována apparmorem.

Zkontrolujte tento soubor:/etc/apparmor.d/usr.sbin.mysqld .

Zde přidejte složku projektu:

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

Nakonec proveďte

sudo /etc/init.d/apparmor reload


  1. mysql_connect VS mysql_pconnect

  2. Nastavte výchozí hodnotu pro sloupec v SQLite:DEFAULT Constraint

  3. Jak zapíšu LINQ's .Skip(1000).Take(100) v čistém SQL?

  4. Zadanému názvu a typům argumentů neodpovídá žádná funkce