2009-10-21 8 views

risposta

108
mysql -u <user> -p -e "select * from schema.table" 
+1

C: \ Program Files (x86) \ MySQL \ MySQL Server 5.7 \ bin> mysql.exe - u root -p -e "my query" ----> ERROR 1045 (28000): accesso negato per utente 'root' @ 'localhost' (usando password: YES) –

+0

Questo dovrebbe essere il primo risultato in una ricerca su google (per "mysql exec sql dalla riga di comando") e non l'enorme sito mysql! –

+0

Non so perché ma le virgolette non funzionavano per me, ho dovuto trasformarle in virgolette singole – tinybyte

2
echo "select * from users;" | mysql -uroot -p -hslavedb.mydomain.com mydb_production 
8
mysql -uroot -p -hslavedb.mydomain.com mydb_production -e "select * from users;" 

Dalla stampa utilizzo:

-e, --execute=name
Exec comanda e chiudi. (Disabilita --force e file di cronologia)

5

ecco come si può fare con un guscio fresco trucco:

mysql -uroot -p -hslavedb.mydomain.com mydb_production <<< 'select * from users' 

'< < <' istruisce la shell di prendere tutto ciò che lo segue come stdin, simile a tubazioni da eco.

utilizzare il flag -t per abilitare l'uscita tavolo formato

5

Se si tratta di una query si esegue spesso, è possibile memorizzare in un file. Poi ogni volta che si vuole run it:

mysql < thefile 

(con tutti i login e database bandiere ovviamente)

Problemi correlati