明輝手游網(wǎng)中心:是一個免費提供流行視頻軟件教程、在線學(xué)習(xí)分享的學(xué)習(xí)平臺!

Shell下完成免密碼迅速登陸MySQL數(shù)據(jù)庫的方法_Mysql

[摘要]這篇文章主要給大家介紹了在Shell下實現(xiàn)免密碼快速登陸MySQL數(shù)據(jù)庫的方法,文中通過示例代碼一步步介紹的非常詳細(xì),對大家具有一定的參考學(xué)習(xí)價值,需要的朋友們下面跟著小編來一起看看吧。背景當(dāng)我們在 Shell 下想要通過 mysql-client 登陸到 MySQL 數(shù)據(jù)庫的時候,我們總是需要非...
這篇文章主要給大家介紹了在Shell下實現(xiàn)免密碼快速登陸MySQL數(shù)據(jù)庫的方法,文中通過示例代碼一步步介紹的非常詳細(xì),對大家具有一定的參考學(xué)習(xí)價值,需要的朋友們下面跟著小編來一起看看吧。

背景

當(dāng)我們在 Shell 下想要通過 mysql-client 登陸到 MySQL 數(shù)據(jù)庫的時候,我們總是需要非常麻煩的輸入一次又一次的密碼。

而且,如果你的 root 密碼是高度隨機的話(LastPass大法好),那么你登陸一次 MySQL 數(shù)據(jù)庫的成本就會非常大了。

通常我們登陸數(shù)據(jù)庫的時候都是這樣登陸的,如下

root@imlonghao:~# mysql -uroot -p
Enter password:

那么,有沒有一個辦法能夠既安全,又能簡單方便地登陸到數(shù)據(jù)庫去呢?

方法

答案當(dāng)然是有的,而且,MySQL 也已經(jīng)幫我們想過這個問題了!

參考鏈接:End-User Guidelines for Password Security

使用 .my.cnf 快速登陸

在 ~/ 目錄新建一個 .my.cnf 文件。當(dāng)然,如果你已經(jīng)有這個文件了,直接修改這個文件即可!

我個人喜歡用 vim 大法,于是我們就可以這樣

vim ~/.my.cnf

然后在文件中寫入下面的信息

[client]
password=your_pass
user=your_user

注意:修改 your_pass 和 your_user 為你想要登陸用戶的密碼和用戶名

下面是一個例子:

[client]
password=mysqlrootpassword123321
user=root

如果你已經(jīng)有 .my.cnf 這個文件了,就在 [client] 欄位寫入信息即可!

注意:由于 .my.cnf 文件中明文寫了你的密碼,因此要注意設(shè)置這個文件的文件權(quán)限

root@imlonghao:~# chmod 400 ~/.my.cnf

保存后,我們就可以直接使用 mysql 命令登陸 MySQL 數(shù)據(jù)庫了!

注:如果你需要指定一個設(shè)置文件而不使用默認(rèn)的 ~/.my.cnf 的話,就需要使用 --defaults-file=file_name 參數(shù)了。例:

root@imlonghao:~# mysql --defaults-file=/home/imlonghao/mysql-opts

使用環(huán)境變量 MYSQL_PWD 快速登陸

MySQL優(yōu)先會使用環(huán)境變量中的參數(shù)作為運行參數(shù)

root@imlonghao:~# export MYSQL_PWD=your_pass

設(shè)置后,再次登陸 mysql 就不需要再次輸入密碼了。

不過需要注意的是,如果你退出了當(dāng)前的 Shell 的話,這個環(huán)境變量就會消失。

更需要注意的是,你在 Shell 輸入的命令,會被自動保存, history 就可以看到你輸入過的命令。

總結(jié)

以上就是Shell下實現(xiàn)免密碼快速登陸MySQL數(shù)據(jù)庫的方法_Mysql的詳細(xì)內(nèi)容,更多請關(guān)注php中文網(wǎng)其它相關(guān)文章!


學(xué)習(xí)教程快速掌握從入門到精通的SQL知識。