2012-05-23 18 views
10

file di /home//my.cnf La mia principale di utente MySQL si presenta così (sistema Linux):specificare file di configurazione separato sulla linea di comando mysqldump

[client] 
host=localhost 
user=<user> 
password=******** 
database=h2o_amr 

voglio puntare mysqldump a questo file di configurazione, che è nella directory in cui il file mysqldump sarà scritto:

[client] 
host=localhost 
user=<user> 
password=******** 

Come posso puntare mysqldump per questo file di configurazione? Ho cercato una risposta a questo nelle pagine man e su Internet prima di pubblicare questa domanda.

risposta

26

Ci sono tre opzioni per modificare il comportamento predefinito:

  • --no-defaults: Non leggere le opzioni di default da qualsiasi file di opzioni.
  • --defaults-file=#: legge solo le opzioni predefinite dal file specificato #.
  • --defaults-extra-file=#: leggere questo file dopo aver letto i file globali.

Queste informazioni sono state copiate dal manuale integrata, cioè
mysqldump --help | grep -A7 'Default options'.

Nota: il parametro deve essere in prima posizione se si aggiungono altri parametri, in caso contrario non verrà riconosciuto.

2

According to the documentation, c'è un'opzione --defaults-file=PATH che fa esattamente quello che ti serve. L'ho provato io stesso con mysqldump e sembra che abbia funzionato.

ci sono anche altri modi per avere MySQL leggere i file di opzione senza l'utilizzo di tale argomento: utilizzando i percorsi predefiniti cercano i clienti di MySQL tramite per compilare l'elenco di opzioni (1st and 2nd table).

Problemi correlati