2012-09-30 4 views
41

Obecnie używam następujących elementów, ale ZAWSZE monituje mnie o ręczne wpisanie hasła. Czy jest jakiś sposób przekazania go w linii poleceń podczas uruchamiania pliku wykonywalnego?Czy istnieje sposób przekazania hasła użytkownika DB do narzędzia wiersza poleceń mysqladmin?

mysqladmin processlist -u root -p 
+0

Set MYSQL_PWD w środowisku ('export MYSQL_PWD = muhpassword') i wykonaj polecenie bez' -p'. Zobacz [Zmienne środowiskowe programu MySQL] (https://dev.mysql.com/doc/refman/5.7/en/environment-variables.html). Pomimo instrukcji [dire ostrzeżenia] (https://dev.mysql.com/doc/refman/5.7/en/password-security-user.html), jest to [raczej bezpieczne] (https: // security. stackexchange.com/questions/20282/is-passing-sensitive-data-through-process-environment-secure). O ile nie uruchomisz dziwnego wareza w tej samej powłoce, która może odkurzyć twoje środowisko i wysłać go do darkaspirator.cc. –

Odpowiedz

67

Właśnie dowiedziałem odpowiedź ....

mysqladmin processlist -u root -pYOURPASSWORDHERE 

No przestrzeń pomiędzy hasła i -P

+4

Cytaty są również dozwolone, jeśli hasło zawiera spacje, jak w: '-p'YOURPASSWORD HERE'' –

+8

Wow ... prawdziwe intuicyjne ... Spacja między' -h localhost' i '-u root' ale nie' -pPASSWORD' . Klasyczni programiści robią wszystko trudniej niż to konieczne. –

+1

@KolobCanyon można pominąć spację między -u a root, '-uroot' działa dobrze –

18

Spróbuj:

--password=PasswordTextHere 
+0

To zadziałało dla mnie. –

+0

to też zadziałało dla mnie –

+0

Przydaje się, gdy trzeba podać "puste" hasło (oczywiście do celów testowych). –

Powiązane problemy