MySQL 密碼相關

2022-01-10 10:07:24 字數 1845 閱讀 7368

mysql客戶端進行使用者登陸之後,可以使用以下命令顯示所登入的使用者

mysql> select user();

+----------------+

| user() |

+----------------+

| root@localhost |

+----------------+

1 row in set (0.00 sec)

如果直接輸入mysql命令而不指定使用者名稱,則是以遊客賬戶odbc@進行登入

初始的管理員root是沒有密碼的,我們可以使用以下命令為它設定密碼,注意這個是在cmd環境下而不是登入到mysql客戶端之後才做的,語法格式為mysqladmin -uroot -p舊密碼 password新密碼

mysqladmin -uroot password "123"
mysqldata資料夾下缺省會生成乙個mysql資料庫,其中有user表就是做登入授權驗證的。

這使得mysql必須先經過授權登入後才能進行一系列的操作,但是我們也可以通過一些技術手段繞過這個授權。

切記要使用管理員身份開啟cmd

1.關閉需要授權登入的mysql服務程序

net stop mysql
2.開啟mysql免授權登入的服務程序

mysqld --skip-grant-tables
3.開啟免授權登入的服務程序後可以再開啟乙個新的cmd命令終端,直接使用root使用者進行登入而不用輸入密碼

mysql -uroot
4.在mysql登入狀態下修改密碼(使用password()函式進行加密,使得密碼儲存是以密文儲存)

update mysql.user set authentication_string=password('yunya') where user = 'root' and host="localhost";
如果上述命令失效或丟擲異常,可使用以下命令(我這裡的環境是5.7版本,5.7以下的版本可嘗試使用以下命令)

update mysql.user set password=password('yunya') where user = 'root' and host="localhost" and host="localhost";
5.立即重新整理到磁碟

flush privileges;
6.退出

exit
7.關閉免授權的服務程序,重新啟動需要授權登入的服務程序

tskill mysqld

net start mysql # 這裡就是重新啟動需要授權登入的服務程序

8.效果驗證,登入成功

mysql -uroot -pyunya

mysql 硬碟加密碼 MySQL 密碼相關

登入使用者 當mysql客戶端進行使用者登陸之後,可以使用以下命令顯示所登入的使用者 mysql select user user root localhost 1 row in set 0.00 sec 如果直接輸入mysql命令而不指定使用者名稱,則是以遊客賬戶odbc 進行登入 設定密碼 初始...

mysql 8 0 密碼相關

mysql8.0版本之前,mysql使用的加密方式是 mysql native passowrd 在mysql8.0之後,加密的方式改為 caching sha2 password 所以修改密碼的方式也變了 alter user root localhost identified by 123456...

mysql密碼策略相關引數

今天本地虛擬機器測試環境安裝了mysql5.7,初次登陸要求重置密碼,我就打算改為123456,沒想到報錯了,如下圖 提示密碼不滿足安全認證要求,記得以前沒這限制啊。查了一下原來新版本的mysql中增加了validate password外掛程式用於測試密碼並提高安全性。檢視mysql密碼策略配置 ...