linux上mysql root密碼忘記了怎麼辦

PHPz
發布: 2023-04-21 11:38:36
原創
2430 人瀏覽過

MySQL是一個廣泛使用的關聯式資料庫管理系統,它是一個重要的開源軟體。而在使用MySQL時,我們常常需要使用root帳號登入MySQL,但是,如果你忘記了root帳號的密碼,該怎麼辦呢?

本文將介紹一些常見的解決方案,讓你能夠快速回覆 root 帳號的存取權。

方案一:使用mysqladmin指令

mysqladmin是MySQL自帶的命令列工具,你可以用它來修改root密碼,具體操作方法如下:

  1. #開啟終端,輸入以下指令:

    sudo systemctl stop mysql

    這個指令將關閉MySQL。之所以先關閉MySQL,是為了方便接下來修改密碼。

  2. 輸入以下指令啟用無密碼登入:

    sudo mysqld_safe --skip-grant-tables &

    這個指令將開啟MySQL的臨時權限,你可以暫時無需密碼的存取MySQL 資料庫。

  3. 輸入以下指令連接到 MySQL 資料庫:

    mysql -uroot

    輸入完這個指令之後,你會進入到命令列模式。

  4. 修改root密碼:

    use mysql;

    update user set authentication_string=password('123456') where user='root';

    這個指令將資料庫中root的密碼改為“123456”,你也可以將這個密碼替換成你想要設定的密碼。

  5. 退出MySQL 命令列模式:

    quit

  6. 重新啟動MySQL:

    sudo systemctl start mysql

  7. 用修改後的密碼登入:

    mysql -u root -p

    這個指令會要求你輸入新密碼登入MySQL。

方案二:使用init腳本

這個方案需要你擁有root權限。你可以使用Linux的init腳本,來重新啟動MySQL並載入 SQL 腳本,以達到修改root密碼的目的。

操作步驟如下:

  1. 停止MySQL 服務:

    sudo /etc/init.d/mysql stop

  2. #建立包含SQL 指令的檔案:

    sudo nano /var/mysql-init

    這個指令將在/var 目錄下建立一個mysql-init 文件,並讓你使用nano 編輯器,輸入以下內容:

    UPDATE mysql.user SET authentication_string=PASSWORD('123456') WHERE user='root';
     FLUSH PRIVILEGES;

    上面的指令將會root 的密碼更改為「123456」。

  3. 啟用MySQL 服務:

    sudo /etc/init.d/mysql start

    在MySQL 開始啟動時,它會自動執行SQL命令檔案中的命令,以修改root 密碼。

  4. 清理出錯訊息:

    sudo rm /var/mysql-init

如果你忘記root密碼,就使用這兩個方案中的任一個,都可以讓你重新取得存取MySQL 的權限。不過,使用方案一比較推薦,因為它更簡單易懂,並且對 MySQL 的正常運作並無負面影響。

當然,為避免忘記密碼,你應該建立一個更好的密碼管理策略,例如使用密碼管理工具儲存你的 MySQL 密碼,或定期修改密碼以提高安全性。

以上是linux上mysql root密碼忘記了怎麼辦的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!