tft每日頭條

 > 生活

 > mysql密碼忘了如何查看

mysql密碼忘了如何查看

生活 更新时间:2024-12-16 09:45:27

MySQL忘記了密碼怎麼辦?不用慌,下面的兩個方案輕松修改root密碼!

mysql密碼忘了如何查看(MySQL忘記密碼怎麼辦)1

1、使用init-file

在Unix/Linux系統上,啟動MySQL Server之前可以指定init-file,當MySQL Server啟動時就會先執行init-file中的内容,可以在其中編寫修改root密碼的語句,從而實現重置root密碼的目的。

1、停止MySQL Server

$ systemctl stop mysqld $ ps -ef|grep mysqld

2、建立init-file,并編碼修改密碼的語句

$ touch /var/lib/mysql/mysql-init-password

在mysql-init-password中增加以下語句

ALTER USER 'root'@'localhost' IDENTIFIED BY 'NEWPASSWORD';

限制mysql-init-password隻對mysql用戶可讀

$ sudo chmod 400 /var/lib/mysql/mysql-init-password $ sudo chown mysql:mysql /var/lib/mysql/mysql-init-password

3、使用init-file重啟MySQL Server

$ sudo -u mysql /usr/sbin/mysqld --daemonize --pid-file=/var/run/mysqld/mysqld.pid --user=mysql --init-file=/var/lib/mysql/mysql-init-password

4、查看啟動日志

查看MySQL Server啟動日志,一般是/var/log/mysqld.log,如果執行init-file成功,一般會存在Execution of init_file...Started/Ended的日志。

5、驗證密碼修改的有效性

$ mysql -u root -p'NEWPASSWORD'

6、删除init-file

删除init-file或者不帶init-file參數重啟MySQL Server,否則root密碼會在每次啟動時修改。

$ sudo rm -rf /var/lib/mysql/mysql-init-password

2、使用--skip-grant-tables

--skip-grant-tables啟動可選項的功能時啟動後忽略加載授權表,這樣子一來就跳過了root的身份認證連接數據庫,然後再使用命令修改root密碼,重啟MySQL Server恢複服務。

由于使用了--skip-grant-tables以後任何客戶端都可以不通過密碼連接服務器有一定的風險,所以MySQL 8.0.3開始,使用--skip-grant-tables的同時會自動啟用--skip-networking,不允許遠程連接。

1、停止MySQL Server

$ systemctl stop mysqld $ ps -ef|grep mysqld

2、使用--skip-grant-tables啟動MySQL Server

$ sudo -u mysql /usr/sbin/mysqld --daemonize --pid-file=/var/run/mysqld/mysqld.pid --user=mysql --skip-grant-tables

3、無需密碼連接到MySQL Server

$ mysql -u root

4、加載授權表并修改密碼

FLUSH PRIVILEGES;

5、修改root密碼

ALTER USER 'root'@'localhost' IDENTIFIED BY 'NEWPASSWORD';

6、驗證密碼修改的有效性

$ mysql -u root -p'NEWPASSWORD'

7、重啟MySQL Server

$ systemctl stop mysqld $ ps -ef|grep mysqld $ systemctl start mysqld

對你有用的話,點個贊關注一下吧!

,

更多精彩资讯请关注tft每日頭條,我们将持续为您更新最新资讯!

查看全部

相关生活资讯推荐

热门生活资讯推荐

网友关注

Copyright 2023-2024 - www.tftnews.com All Rights Reserved