簡體   English   中英

如何在 MySQL5.7 中更改“root”密碼

[英]How to change 'root' password in MySQL5.7

我在我的 Windows 機器上忘記了“MySQL”的“根”密碼。 我嘗試使用此鏈接,但收到錯誤消息(附圖片)。 誰能幫我解決這個問題?

在此處輸入圖像描述

遵循的步驟:-

1:- 在我的計算機服務部分停止了“MySQL 進程”。

2:- 創建了一個 .txt 文件,其中包含ALTER USER 'root'@'localhost' IDENTIFIED BY 'MyNewPass' 的數據;

3:- 將文件重命名為 mysql-init.txt 並保存到 C 盤。

4:- 打開命令提示符並使用命令C:> cd C:\Program Files\MySQL\MySQL Server 5.7\bin

5:- 然后用C:> mysqld --init-file=C:\mysql-init.txt

之后,我在控制台中收到此錯誤消息。

這里與 MySQL Community Server 5.7 有點不同,我分享一些步驟,如何重置 MySQL 5.7 root 密碼或設置密碼。 它也適用於 CentOS 7 和 RHEL7。

  1. 停止您的數據庫
service mysqld stop
  1. 修改/etc/my.cnf文件添加skip-grant-tables
vi /etc/my.cnf
[mysqld] 
skip-grant-tables
  1. 啟動 MySQL
service mysqld start
  1. 選擇 MySQL 默認數據庫
mysql -u root
mysql> use mysql;
  1. 設置新密碼
mysql> update user set authentication_string=PASSWORD("yourpassword") where User='root';
  1. 重啟 MySQL 數據庫
service mysqld restart
mysql -u root -p

對於 Linux此過程是如果您在服務器上具有 root 訪問權限

第一件事。 以 root 身份登錄並停止 mysql 守護程序。 現在讓我們啟動 mysql 守護進程並跳過存儲密碼的授權表。

mysqld_safe --skip-grant-tables

您應該看到 mysqld 成功啟動。 如果沒有,那么你有更大的問題。 現在您應該能夠在沒有密碼的情況下連接到 mysql。

mysql --user=root mysql

update user set Password=PASSWORD('new-password') where user='root';
flush privileges;
exit;

現在殺死你正在運行的mysqld,然后正常重啟它。 如果您有問題,請告訴我

對於窗戶

  1. 完全停止您的 MySQL 服務器。 這可以從 Wamp 完成(如果你使用它),或者使用“運行”窗口啟動“services.msc”,然后在那里停止服務。

  2. 使用“運行”窗口中的“cmd”打開您的 MS-DOS 命令提示符。 然后轉到您的 MySQL bin 文件夾,例如 C:\MySQL\bin。 如果您使用 Wamp,路徑會有所不同。

  3. 在命令提示符下執行以下命令:

     mysqld.exe -u root --skip-grant-tables
  4. 保持當前 MS-DOS 命令提示符不變,並打開一個新的 MS-DOS 命令提示符窗口。

  5. 再次轉到您的 MySQL bin 文件夾。

  6. 輸入“mysql”並按回車鍵。

  7. 您現在應該可以使用 MySQL 命令提示符。 輸入“使用 mysql;” 以便我們切換到“mysql”數據庫。

  8. 執行以下命令更新密碼:

     UPDATE user SET Password = PASSWORD('your_new_passowrd') WHERE User ='root';

    但是,您現在可以運行幾乎任何您希望的 SQL 命令。

完成后關閉第一個命令提示符,然后鍵入“exit;” 在第二個命令提示符中。

您現在可以啟動 MySQL 服務。 而已。

查看此答案以從討論中獲得更多解釋

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM