Sto usando mysqlimport per sostituire i dati in una tabella con valori da un file TSV. Tutto funziona correttamente (importazione dei dati utilizzando il nome utente e la password del superutente DB), quindi ora voglio bloccarlo in modo che l'utente del database che esegue l'importazione possa influire solo sulla singola tabella che desidero sostituire.Privilegi minimi del database per l'utilizzo dei dati di caricamento infile
So che ho bisogno di concedere FILE su . per utilizzare "LOAD DATA INFILE" (che mysqlimport esegue il wrapping), ma sto riscontrando problemi nel trovare il set minimo di autorizzazioni che posso concedere sul database.
Ho provato;
grant FILE on *.* to ...
grant ALL on dbname.tablename to ....
Ma questo mi dà un errore quando eseguo mysqlimport;
mysqlimport: Error: Access denied for user ...
qualcuno sa se è possibile isolare il database in modo che solo la tabella relativa può essere alterato da questo utente, o devo per consentire loro un accesso più ampio per rendere possibile il mysqlimport?
Sapete che 'FILE' NON è in' ALL'? È un po 'un termine improprio. Poi di nuovo, se ottieni un accesso negato, fallisce su nome utente, host o password prima. – Wrikken
possibile duplicato di [accesso negato per il caricamento di dati in infile in MySQL] (http://stackoverflow.com/questions/2221335/access-denied-for-load-data-infile-in-mysql) – blo0p3r