新建用戶
- 新建用戶
create user 'wuyujin'@'%' identified by '123456';
- 授予權限
grant all privileges on *.* to 'wuyujin'@'%';
privileges
可以省略 - 刷新權限
flush privileges;
修改用戶密碼
-
用語句修改密碼
alter user 'root'@'localhost' identified by '123456';
推薦set password for root@localhost = password('123456');
記得自己用password()轉換明文密碼update mysql.user set password=password('123') where user='root' and host='localhost';
改過密碼之後,記得刷新權限:flush privileges;
flush privileges
表示從mysql數據庫的grant表中重新加載權限數據。因爲MySQL把權限都放在了cache中,所以在做完更改後需要重新加載。
-
用
mysqladmin
程序修改密碼
mysqladmin -u用戶名 -p舊密碼 password 新密碼
如:mysqladmin -uroot -p123456 password 123
重設root用戶密碼
-
場景
有時候會忘記root賬號密碼(學生居多),這時不要慌,root密碼忘記也可以重設。 -
思路
mysqld
重啓MySQL服務器,設置參數使得本次服務運行期間,不輸入密碼也可以登入MySQL客戶端
mysql
不用密碼登入MySQL客戶端,修改root用戶密碼(或直接改寫mysql.user
表中對應的數據)。- 刷新權限。退出客戶端。重啓服務端。一切正常了。
-
解決流程
- 關閉正在運行的MySQL服務。
- 打開DOS窗口,轉到mysql\bin目錄。
- 輸入mysqld --skip-grant-tables 回車。–skip-grant-tables 的意思是啓動MySQL服務的時候跳過權限表認證。
- 再開一個DOS窗口(因爲剛纔那個DOS窗口已經不能動了),轉到mysql\bin目錄。
- 輸入mysql回車,如果成功,將出現MySQL提示符 >。
- 連接權限數據庫: use mysql; 。
- 改密碼:update user set password=password(“123”) where user=“root”;(別忘了最後加分號) 。
- 刷新權限(必須步驟):flush privileges; 。
- 退出 quit。
- 註銷系統,再進入,使用用戶名root和剛纔設置的新密碼123登錄。