欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

重置MySQL 8.0 Root密碼的簡便方法小結(jié)

 更新時間:2024年10月14日 11:26:34   作者:jardonwang1  
這篇文章主要給大家介紹了幾種輕松重置 MySQL 8.0 Root 密碼的簡便方法,文中通過代碼示例講解的非常詳細,對大家的學(xué)習(xí)或工作有一定的幫助,需要的朋友可以參考下

在Windows環(huán)境下安裝MySQL數(shù)據(jù)后,如果忘記了 MySQL 8.0 的 root 密碼,不必擔(dān)心!通過 --skip-grant-tables 和 named-pipe 模式登錄后,只需幾步簡單的 SQL 命令即可重置密碼:刷新權(quán)限表、修改密碼、再刷新權(quán)限,最后重啟 MySQL 服務(wù),你就能使用新密碼順利登錄數(shù)據(jù)庫!

問題如下:

出現(xiàn) ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES) 表示 MySQL 拒絕了你提供的 root 用戶的密碼??赡艿脑虬ǎ?/p>

  1. 密碼不正確:你提供的密碼和 root 用戶的實際密碼不匹配。
  2. MySQL 安裝時的問題:可能在安裝 MySQL 時設(shè)置的 root 用戶密碼不正確,或者被誤改。
  3. 權(quán)限問題root 用戶的權(quán)限或賬戶狀態(tài)可能有問題

解決方案

1. 檢查是否輸入正確的密碼

確認你輸入的密碼是否正確,注意以下幾點:

確認你輸入的密碼是否正確,注意以下幾點:

  • 密碼區(qū)分大小寫。
  • 確保沒有意外的空格或字符被包含在密碼中。
  • 確保你嘗試的是 root 用戶的密碼,而不是其他用戶。

2. 使用“跳過權(quán)限表”的方式重置 root 密碼

如果你確認密碼正確但仍然無法登錄,或者你忘記了 root 密碼,可以通過“跳過權(quán)限表”的方式重置密碼。以下是步驟:

2.1 停止 MySQL 服務(wù)

在 Windows 下,你可以通過命令提示符停止 MySQL 服務(wù):

net stop mysql

如果你使用的是不同的 MySQL 服務(wù)名稱(如 mysql80),請將命令改為:

net stop mysql80

問題一:如果執(zhí)行net stop mysql后,出現(xiàn)“C:\Users\admin>net stop mysql80 發(fā)生系統(tǒng)錯誤 5。 拒絕訪問。”

出現(xiàn) 系統(tǒng)錯誤 5,并顯示“拒絕訪問”,通常意味著你沒有足夠的權(quán)限來停止 MySQL 服務(wù)。這是一個權(quán)限問題,通常是因為你未以管理員身份運行命令提示符。

解決方法:

方法一:以管理員身份運行命令提示符

Windows 中的一些操作(如啟動和停止服務(wù))需要以管理員權(quán)限執(zhí)行。請按以下步驟操作:

  • 打開命令提示符

    • 點擊 開始 菜單,在搜索框中輸入 cmd
    • 在搜索結(jié)果中,右鍵點擊 命令提示符,然后選擇 以管理員身份運行。
    • 在以管理員權(quán)限運行的命令提示符中,輸入以下命令:
net stop mysql80

或者,如果你的 MySQL 服務(wù)名稱是 mysql 而不是 mysql80,則輸入:

net stop mysql
  • 檢查 MySQL 服務(wù)名稱

在某些情況下,MySQL 的服務(wù)名稱可能不是 mysql80。你可以通過以下步驟檢查你系統(tǒng)中的 MySQL 服務(wù)名稱:

  • 打開 命令提示符(以管理員身份運行)。

  • 輸入以下命令查看所有服務(wù):

sc query

在返回的列表中找到類似 mysql 或 mysql80 的條目,記下服務(wù)名稱。

或者,你可以專門查找 MySQL 服務(wù):

sc query | findstr /i "mysql"

找到正確的服務(wù)名稱后,再使用正確的服務(wù)名稱來停止 MySQL 服務(wù)。

方法二:使用 Windows 服務(wù)管理器停止 MySQL 服務(wù)

如果不方便通過命令行操作,也可以使用 Windows 服務(wù)管理器來停止 MySQL 服務(wù):

  • 按 Win + R 打開 運行 窗口,輸入 services.msc,然后按回車。
  • 在服務(wù)管理器中找到 MySQL80 或類似 MySQL 的服務(wù)。
  • 右鍵點擊該服務(wù),然后選擇 停止

2.2 以跳過權(quán)限表模式啟動 MySQL

使用 --skip-grant-tables 選項啟動 MySQL。這個選項允許你在沒有密碼的情況下登錄 MySQL。

  • 打開命令提示符,進入 MySQL 的安裝目錄,通常是 C:\Program Files\MySQL\MySQL Server <版本號>\bin。
  • 使用以下命令啟動 MySQL 服務(wù)器(跳過權(quán)限表):
mysqld --skip-grant-tables

問題二:執(zhí)行mysqld --skip-grant-tables 命令,再執(zhí)行mysql -u root報錯

執(zhí)行 mysqld --skip-grant-tables 命令,再執(zhí)行mysql -u root,出現(xiàn)ERROR 2003 (HY000): Can't connect to MySQL server on 'localhost:3306' (10061),表明 MySQL 服務(wù)并未成功啟動。

排查原因和解決方法:

1. 確認 MySQL 是否成功啟動

執(zhí)行 mysqld --skip-grant-tables 命令后,通常會顯示一些輸出。如果命令行未響應(yīng)且沒有提示 MySQL 已啟動,可能說明啟動失敗。

在執(zhí)行該命令時,請查看是否有錯誤輸出。如果啟動失敗,可能會遇到類似以下問題:

  • 配置文件錯誤:檢查 my.ini 文件中的端口設(shè)置或其他參數(shù)。
  • 數(shù)據(jù)目錄錯誤:確保 MySQL 的數(shù)據(jù)目錄可訪問且完整。

如果沒有看到任何輸出,可以查看 MySQL 錯誤日志。

2. 查看 MySQL 錯誤日志

MySQL 錯誤日志中會包含詳細的啟動錯誤信息。日志通常位于 MySQL 數(shù)據(jù)目錄下,文件名類似于 mysql.err 或 error.log。你可以打開該文件,查找任何與啟動失敗相關(guān)的錯誤。

日志文件通常位于:

# 路徑為安裝路徑MySQL Server xx\Data\mysql.err下
C:\ProgramData\MySQL\MySQL Server 8.0\Data\mysql.err

可能不是mysql.err,需要看一下mysql.ini中配置,我的配置中文件名稱為log-error="DESKTOP-ONBJR20.err"

可以通過下面命令查看文件內(nèi)容:

type DESKTOP-ONBJR20.err
# 或者
more DESKTOP-ONBJR20.err
  • 錯誤日志信息如下:
2024-09-24T03:22:02.873676Z 0 [ERROR] [MY-010131] [Server] TCP/IP, --shared-memory, or --named-pipe should be configured on NT OS
2024-09-24T03:22:02.873977Z 0 [ERROR] [MY-010119] [Server] Aborting
2024-09-24T03:22:04.080405Z 0 [ERROR] [MY-013183] [InnoDB] Assertion failure: trx0sys.cc:643:UT_LIST_GET_LEN(trx_sys->mysql_trx_list) == 0 thread 32636

從錯誤日志來看,MySQL 在啟動過程中遇到了幾個問題,導(dǎo)致無法成功啟動。這是關(guān)鍵的錯誤信息:

  1. [ERROR] [MY-010131]TCP/IP, --shared-memory, or --named-pipe should be configured on NT OS

    • 這個錯誤表明在 Windows 環(huán)境中,MySQL 需要正確配置網(wǎng)絡(luò)選項。它提到了需要使用 TCP/IPshared-memory 或 named-pipe 來進行通信。
  2. [ERROR] [MY-010119]Aborting

    • 這表明 MySQL 在遇到上述錯誤后停止了啟動。
  3. [ERROR] [MY-013183] [InnoDB] Assertion failure: 這通常是由于 InnoDB 存儲引擎中的一個內(nèi)部一致性檢查失敗導(dǎo)致的。這個錯誤可能是由于損壞的事務(wù)或者數(shù)據(jù)導(dǎo)致的。

解決方案

1、修復(fù) TCP/IP 或 Named Pipe 配置

你可以確保 MySQL 正確使用 TCP/IP,這是大多數(shù)情況下的首選方式。檢查 my.ini 中的網(wǎng)絡(luò)設(shè)置。打開 my.ini 文件,確保以下設(shè)置存在且正確:

[mysqld]
bind-address=127.0.0.1
enable-named-pipe

2、修復(fù) InnoDB 相關(guān)錯誤

InnoDB 錯誤通常表明數(shù)據(jù)庫文件或事務(wù)日志可能損壞。打開 my.ini 文件,添加以下配置來禁用 InnoDB 的恢復(fù)檢查:

[mysqld]
innodb_force_recovery=0

innodb_force_recovery 可以有 1 到 6 的值,分別對應(yīng)不同的恢復(fù)力度。如果 1 無效,你可以逐漸增加到 2 或 3 嘗試恢復(fù),但避免使用更高的值(如 4-6),這些可能導(dǎo)致數(shù)據(jù)丟失。

  • 啟動后,不要關(guān)閉此窗口。

2.3 重新打開另一個命令提示符窗口,登錄 MySQL

  • 在另一個命令提示符窗口中,使用以下命令登錄 MySQL(不需要密碼):

mysql --protocol=PIPE -u root
  • 現(xiàn)在你應(yīng)該可以登錄 MySQL。

2.4 重置 root 密碼

登錄成功后,使用以下 SQL 命令重置 root 用戶的密碼:

USE mysql;
 
ALTER USER 'root'@'localhost' IDENTIFIED BY 'new_password';
 
FLUSH PRIVILEGES;

將 new_password 替換為你想要設(shè)置的新密碼。

2.5 關(guān)閉 MySQL 跳過權(quán)限表的模式并重啟服務(wù)

  • 停止跳過權(quán)限表的 MySQL 服務(wù):

    • 首先關(guān)閉命令提示符窗口中的 MySQL 服務(wù)進程(按下 Ctrl + C 或直接關(guān)閉該窗口)。
  • 重新啟動 MySQL 服務(wù):

net start mysql

2.6 使用新密碼登錄

現(xiàn)在你可以使用新的密碼登錄:

mysql -u root -p

輸入你剛才設(shè)置的密碼,應(yīng)該可以成功登錄。

總結(jié)

  • 如果你忘記了 root 密碼,建議使用跳過權(quán)限表的方式重置密碼。
  • 確保 MySQL 服務(wù)已經(jīng)正確啟動,且你在使用正確的用戶名和密碼進行登錄。

以上就是重置MySQL 8.0 Root密碼的簡便方法小結(jié)的詳細內(nèi)容,更多關(guān)于重置MySQL 8.0 Root密碼的資料請關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • MySQL系列之九 mysql查詢緩存及索引

    MySQL系列之九 mysql查詢緩存及索引

    緩存SELECT操作或預(yù)處理查詢的結(jié)果集和SQL語句,當(dāng)有新的SELECT語句或預(yù)處理查詢語句請求,先去查詢緩存,判斷是否存在可用的記錄集,判斷標(biāo)準(zhǔn):與緩存的SQL語句,是否完全一樣,區(qū)分大小寫
    2021-07-07
  • MYSQL數(shù)字函數(shù)詳解及實戰(zhàn)記錄(數(shù)字函數(shù)大全,內(nèi)含示例)

    MYSQL數(shù)字函數(shù)詳解及實戰(zhàn)記錄(數(shù)字函數(shù)大全,內(nèi)含示例)

    數(shù)學(xué)運算函數(shù)可以實現(xiàn)常見的數(shù)學(xué)運算,這篇文章主要給大家介紹了關(guān)于MYSQL數(shù)字函數(shù)詳解及實戰(zhàn)的相關(guān)資料,文中通過代碼介紹的非常詳細,需要的朋友可以參考下
    2024-01-01
  • CentOS下重啟Mysql的各種方法(推薦)

    CentOS下重啟Mysql的各種方法(推薦)

    這篇文章主要介紹了CentOS下重啟Mysql的各種方法(推薦),非常不錯,具有參考借鑒價值,需要的朋友可以參考下
    2017-01-01
  • SQL之各種join小結(jié)詳細講解

    SQL之各種join小結(jié)詳細講解

    這篇文章主要介紹了SQL之各種join小結(jié)詳細講解,本篇文章通過簡要的案例,講解了該項技術(shù)的了解與使用,以下就是詳細內(nèi)容,需要的朋友可以參考下
    2021-08-08
  • 在sql中實現(xiàn)取一行最大值或者最小值

    在sql中實現(xiàn)取一行最大值或者最小值

    這篇文章主要介紹了在sql中實現(xiàn)取一行最大值或者最小值,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-12-12
  • mysql常見問題解決

    mysql常見問題解決

    網(wǎng)上看到了不錯的mysql下常見錯誤解決方法,特整理下,方便大家學(xué)習(xí)mysql
    2008-02-02
  • MySQL主從復(fù)制遇到1590報錯解決分析

    MySQL主從復(fù)制遇到1590報錯解決分析

    這篇文章通過一個主從復(fù)制過程中?1590?的錯誤,說明了?MySQL?8.0?在創(chuàng)建用戶授權(quán)過程中的注意事項,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2023-08-08
  • mysql數(shù)據(jù)庫密碼忘記解決方法

    mysql數(shù)據(jù)庫密碼忘記解決方法

    大家好,本篇文章主要講的是mysql數(shù)據(jù)庫密碼忘記解決方法,感興趣的同學(xué)趕快來看一看吧,對你有幫助的話記得收藏一下,方便下次瀏覽
    2021-12-12
  • MySQL啟動連接的命令以及與PHP程序連接的基本語法

    MySQL啟動連接的命令以及與PHP程序連接的基本語法

    這篇文章主要介紹了MySQL啟動連接的命令以及與PHP程序連接的基本語法,簡單講述了PHP中調(diào)用MySQL的方法,需要的朋友可以參考下
    2015-11-11
  • MySQL 8.0.41圖文詳細安裝教程 附安裝包

    MySQL 8.0.41圖文詳細安裝教程 附安裝包

    本文詳細介紹了MySQL 8.0.41的安裝步驟,包括下載安裝包、選擇安裝模式、設(shè)置數(shù)據(jù)庫密碼、配置系統(tǒng)環(huán)境變量以及驗證安裝結(jié)果,適合初學(xué)者和企業(yè)級應(yīng)用,感興趣的朋友一起看看吧
    2025-03-03

最新評論