Pillole MySQL – come l’utility apparmor può darci problemi

Spread the love

Situazione: ho due schemi database. Attenzione: nello stesso server.

Nel primo importo i dati in una tabella da un file csv utilizzando l’istruzione LOAD DATA senza problemi.

Nel secondo voglio fare la stessa cosa, sullo stesso server, ma ottengo questo errore:

Error Code: 1290. The MySQL server is running with the --secure-file-priv option so it cannot execute this statement

Cioò che dice la documentazione di MySQL e ciò che trovo in tutti i forum è di modificare il file di configurazione

/etc/mysql/my.cnf

per aggiungere una riga che specifichi l’opzione secure-file-priv, per dichiarare qual è la directory preposta ai file da caricare, ma ci sono due problemi

  • l’opzione è già specificata e anche se metto i file in quella cartella, l’errore non scomapre; anche se cambio la cartella e riavvio il server (e posiziono i file csv in quest’ultima cartella), l’errore non scompare
  • il server è lo stesso

Il problema è l’applicazione apparmor di cui ho già parlato in un altro articolo. In sostanza la soluzione era far rileggere ad apparmor il suo file di configurazione (operazione che di tanto intanto si rende necesssaria per cui ho raccolto i comandi uno script Bash):

#!/bin/bash
apparmor_parser -r /etc/apparmor.d/usr.sbin.mysqld
service mysql stop
service mysql start

E tutto va a posto. Non mi spiego ancora, però, come fosse possibile eseguire il LOAD DATA per uno schema e non per un’altro.

Stay tuned.

Lascia un commento

Your email address will not be published.

Questo sito usa Akismet per ridurre lo spam. Scopri come i tuoi dati vengono elaborati.