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

LOAD DATA INFILE Kód chyby:13

Vím, že tento příspěvek je starý, ale stále se objevuje ve výsledcích vyhledávání. Nemohl jsem najít řešení tohoto problému online, takže jsem na to přišel sám. Pokud používáte Ubuntu, pak existuje program s názvem "Apparmor", který brání MySQL v zobrazení souboru. Zde je to, co musíte udělat, pokud chcete, aby MySQL bylo schopné číst soubory z adresáře "tmp":

sudo vim /etc/apparmor.d/usr.sbin.mysqld

Jakmile jste v souboru, uvidíte spoustu adresářů, které může MySQL používat. Přidejte řádek /tmp/** rwk do souboru (nejsem si jistý, že na tom záleží kde, ale tady je ukázka toho, kam jsem to vložil):

  /etc/mysql/*.pem r,

  /etc/mysql/conf.d/ r,

  /etc/mysql/conf.d/* r,

  /etc/mysql/*.cnf r,

  /usr/lib/mysql/plugin/ r,

  /usr/lib/mysql/plugin/*.so* mr,

  /usr/sbin/mysqld mr,

  /usr/share/mysql/** r,

  /var/log/mysql.log rw,

  /var/log/mysql.err rw,

  /var/lib/mysql/ r,

  /var/lib/mysql/** rwk,


  /tmp/** rwk,


  /var/log/mysql/ r,

  /var/log/mysql/* rw,

  /var/run/mysqld/mysqld.pid w,

  /var/run/mysqld/mysqld.sock w,

  /run/mysqld/mysqld.pid w,

  /run/mysqld/mysqld.sock w,

Nyní vše, co musíte udělat, je znovu načíst Apparmor:

sudo /etc/init.d/apparmor reload

Všimněte si, že jsem použil "vim", ale nahraďte jej jakýmkoliv oblíbeným textovým editorem, který umíte používat.



  1. PostgreSQL index se nepoužívá pro dotaz na rozsahy IP

  2. Západka FGCB_ADD_REMOVE

  3. Porovnání výkonu virtuálních počítačů Windows Azure, část 2

  4. Příklady DATEFROMPARTS() v SQL Server (T-SQL)