2012-09-30 15 views
41

Actualmente uso lo siguiente, pero SIEMPRE me induce a escribir manualmente la contraseña. ¿Hay alguna forma de pasarlo en la línea de comando cuando se ejecuta el ejecutable?¿Hay alguna manera de pasar la contraseña de usuario de DB a la herramienta de línea de comandos mysqladmin?

mysqladmin processlist -u root -p 
+0

Conjunto MYSQL_PWD en el medio ambiente ('exportar MYSQL_PWD = muhpassword') y ejecutar su comando sin' -p'. Ver [Variables de entorno del programa MySQL] (https://dev.mysql.com/doc/refman/5.7/en/environment-variables.html). A pesar de las [advertencias directas] del manual (https://dev.mysql.com/doc/refman/5.7/en/password-security-user.html), esto es [bastante seguro] (https: // security. stackexchange.com/questions/20282/is-passing-sensitive-data-through-the-process-environment-secure). A menos que inicie warez extraño en el mismo shell que podría hoover su entorno y lo envíe a darkaspirator.cc. –

Respuesta

67

Acabo de encontrar la respuesta ....

mysqladmin processlist -u root -pYOURPASSWORDHERE 

No hay espacio entre su contraseña y la -p

+4

citas si la contraseña contiene espacios, como en: '-p'YOURPASSWORD HERE'' –

+8

Wow ... real intuitivo ... Espacio entre' -h localhost' y '-u root' pero no' -pPASSWORD' . Programadores clásicos que hacen todo más difícil de lo necesario. –

+1

@KolobCanyon puede omitir el espacio entre -u y root, '-uroot' funciona bien –

18

Probar:

--password=PasswordTextHere 
+0

Esto funcionó para mí. –

+0

esto también funcionó para mí –

+0

Útil cuando necesita pasar una contraseña "en blanco" (para fines de prueba, por supuesto). También se permiten –

Cuestiones relacionadas