安裝mysql時,密碼過期了或者忘記密碼等情況,下圖是提示密碼過期的情況:
1.設置不校驗權限
此時我們可以找到my.cnf文件,在[mysdqld]下面添加skip-grant-tables設置跳過權限認證,
vim /etc/my.cnf
設置成功後,重啓mysql:
sudo service mysqld restart
2.登錄修改密碼
- 登錄mysql,在終端中輸入,
mysql -uroot -p
上圖紅框處不用輸入密碼直接enter即可。
- 查詢當前用戶信息
首先差選當前的用戶和地址執行如下sql語句
select User,host from mysql.User
- 修改用戶密碼
update mysql.user set authentication_string=PASSWORD('123456') where User='root' and host='localhost';
注意低版本的mysql保存密碼字段可能爲password,當提示找不到字段是,執行如下語句進行修改密碼:
update mysql.user set password=PASSWORD('123456') where User='root' and host='localhost';
- 修改過期標識
update mysql.user set password_expired='N' where User='root';
//!設置即時生效
flush privileges;
退出mysql,將my.cnf文件中增加的配置項刪除,重啓mysql,就可以用你修改的密碼登錄了。