simpan login mysql


6

Saya harus login ke beberapa MYSQL DB pada host yang berbeda melalui cli mysql apakah mungkin untuk menyimpan login ini jadi saya tidak perlu melacak / mengingat kredensial?


1
apakah Anda terhubung ke port jaringan mysql atau ssh in dan terhubung ke db secara lokal?
RobotHumans

1
Lihat dba.stackexchange.com/questions/3889/… untuk cara yang lebih mudah untuk melakukan ini dengan default ~/.my.cnf file dan mysql --defaults-group-suffix.
Jim Stewart

Jawaban:


9

Berdasarkan diskusi di PT http://bugs.mysql.com/bug.php?id=17627 Saya menggunakan metode berikut untuk masuk secara otomatis ke berbagai server mysql:

File /path/to/my-host1-cnf.txt

[client]
host="hostname1"
user="username1"
password="password1"
database="database1"

File /path/to/my-host2-cnf.txt

[client]
host="hostname2"
user="username2"
password="password2"
database="database2"

Terhubung ke host1, database1 dengan kredensial tersimpan di atas:

mysql --defaults-file="/path/to/my-host1-cnf.txt"

Terhubung ke host2, database2 dengan kredensial tersimpan di atas:

mysql --defaults-file="/path/to/my-host2-cnf.txt"

Semoga ini membantu :-)


1
Sepertinya ini yang saya butuhkan. Terima kasih!
veilig

4

Anda selalu dapat membuat alias untuk itu

alias db1='mysql -uUsername1 -pPasswordSecure1 -hHosname1 DatabaseName1'
alias db2='mysql -uUsername2 -pPasswordSecure2 -hHosname2 DatabaseName2'

dll ..

Dan memasukkannya ke dalam

.bash_aliases

.barsh_profile

atau

.bashrc

Tetapi ini tidak menyelesaikan masalah keamanan! Bahkan jika Anda memberikan izin "bagus" pada file bash Anda, bukan berarti itu bukan teks biasa :(


Ini tidak aman! "Ini nyaman tetapi tidak aman. Pada beberapa sistem, kata sandi Anda menjadi terlihat oleh program status sistem seperti ps yang dapat dipanggil oleh pengguna lain untuk menampilkan baris perintah." dev.mysql.com/doc/refman/5.1/en/password-security-user.html
geofflee

Menempatkan kata sandi Anda dalam teks biasa adalah tak pernah sebuah ide bagus. Bahkan jika Anda mengamankan file Anda masih dijalankan sebagai perintah yang akan muncul di ps aux, .bash_history Anda, dll.
blockloop
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.