Mysql 免密碼登錄,修改密碼及忘記密碼操作


----免密碼登陸

方式一 my.cnf增加[client]標簽

[client] user="root" password="你的密碼"
單對定義不同的客戶端
[mysql] # 這個是給/usr/loca/mysql/bin/mysql 使用的 user=root password="你的密碼" [mysqladmin] # 這個是給/usr/local/mysql/bin/mysqladmin使用的 user=root password="你的密碼"

每個不同的客戶端需要定義不同的標簽,使用[client]可以統一

方式二 login-path

shell> mysql_config_editor set -G vm1 -S /tmp/mysql.sock -u root -p Enter password [輸入root的密碼] shell> mysql_config_editor print --all [vm1] user=root password=***** socket=/tmp/mysql.sock #login shell> mysql --login-path=vm1 # 這樣登錄就不需要密碼,且文件二進制存儲 ,位置是 ~/.mylogin.cnf

該方式相對安全。如果server被黑了,該二進制文件還是會被破解

方式三 ~/.my.cnf, 自己當前家目錄

#Filename: ~/.my.cnf [client] user="root" password="你的密碼"

----修改密碼

  修改的用戶都以root為列。

方法一:mysql系統外,使用mysqladmin

mysqladmin -u root -p password "test123"

Enter password: 【輸入原來的密碼】

方法二:通過登錄mysql系統,

mysql -uroot -p

Enter password: 【輸入原來的密碼】

mysql>use mysql;

mysql> update user set password=password("ali168.com") where user='root';

mysql> flush privileges;

mysql> exit;      

----忘記密碼操作方法 

首先,你必須要有操作系統的root權限了。要是連系統的root權限都沒有的話,先考慮root系統再走下面的步驟。

類似於安全模式登錄系統,有人建議說是pkill mysql,但是我不建議哈。因為當你執行了這個命令后,會導致這樣的狀況:

/etc/init.d/mysqld status

mysqld dead but subsys locked

這樣即使你是在安全模式下啟動mysql都未必會有用的,所以一般是這樣/etc/init.d/mysqld stop,如果你不幸先用了pkill,那么就start一下再stop咯。

mysqld_safe --skip-grant-tables &     #&,表示在后台運行。或者編輯my.cnf 在[mysqld]的段中加上的skip-grant-tables保存退出並重啟

 

mysql

mysql> use mysql;

mysql> UPDATE user SET password=password("test123") WHERE user='root';   

mysql> flush privileges;

mysql> exit;

 

##本來mysql是不分大小寫的,但是這個是修改的mysql中的mysql數據庫的具體的值,要注意到。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM