這篇文章主要為大家介紹了在Shell下實現免密碼快速登陸MySQL資料庫的方法,文中透過範例程式碼一步步介紹的非常詳細,對大家具有一定的參考學習價值,需要的朋友們下面跟著小編來一起看看吧。
背景
當我們在Shell 下想要透過mysql-client 登陸到MySQL 資料庫的時候,我們總是需要非常麻煩的輸入一次又一次的密碼。
而且,如果你的 root 密碼是高度隨機的話(LastPass大法好),那麼你登陸一次 MySQL 資料庫的成本就會非常大了。
通常我們登陸資料庫的時候都是這樣登陸的,如下
root@imlonghao:~# mysql -uroot -p Enter password:
那麼,有沒有一個辦法能夠既安全,又能簡單方便地登陸到資料庫去呢?
方法
答案當然是有的,而且,MySQL 也已經幫我們想過這個問題了!
參考連結:End-User Guidelines for Password Security
#使用.my.cnf 快速登陸
##在~/目錄新建一個.my.cnf 檔。當然,如果你已經有這個文件了,直接修改這個文件就好! 我個人喜歡用vim 大法,所以我們就可以這樣vim ~/.my.cnf然後在檔案中寫入下面的資訊
[client] password=your_pass user=your_user
注意:修改your_pass 和your_user 為你想要登陸使用者的密碼和使用者名稱
#下面是一個例子:[client] password=mysqlrootpassword123321 user=root如果你已經有.my.cnf 這個檔案了,就在[client] 欄位寫入訊息即可!
注意:由於.my.cnf 檔案中明文寫了你的密碼,因此要注意設定這個檔案的檔案權限
root@imlonghao:~# chmod 400 ~/.my.cnf儲存後,我們就可以直接使用mysql 指令登陸MySQL 資料庫了!
註:如果你需要指定一個設定檔而不使用預設的~/.my.cnf 的話,就需要使用--defaults- file=file_name 參數了。範例:
root@imlonghao:~# mysql --defaults-file=/home/imlonghao/mysql-opts
使用環境變數 MYSQL_PWD 快速登陸
MySQL優先使用環境變數中的參數作為運行參數root@imlonghao:~# export MYSQL_PWD=your_pass設定後,再次登陸mysql 就不需要再輸入密碼了。
不過需要注意的是,如果你退出了目前的 Shell 的話,這個環境變數就會消失。
更要注意的是,你在 Shell 輸入的指令,會被自動儲存, history 就可以看到你輸入過的指令。
總結#
以上是Shell下實作免密碼快速登陸MySQL資料庫的方法_Mysql的詳細內容。更多資訊請關注PHP中文網其他相關文章!