首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫

MySQL修改密碼六大方法總結:從phpMyAdmin到SQL指令完整備忘

     編輯:MySQL 資料庫相關知識

修改MySQL密碼通常需root權限,一般用戶須請求管理員協助。本文彙整六種常用修改方式,涵蓋圖形工具、命令列工具與SQL指令,供不同場景選用。

方法一:phpMyAdmin(最直觀)

登入phpMyAdmin → 選擇mysql資料庫 → 編輯user表 → 修改Password欄位,**務必使用PASSWORD()函數加密** → 執行儲存。

方法二:mysqladmin命令列(特例:可讓一般用戶自改密碼)

mysqladmin -u root -p password 'newpass'

輸入舊密碼後生效。將root替換為自身用戶名即可修改自身密碼。限制:無法清空密碼、需mysqladmin可連線伺服器。

方法三:INSERT新增用戶(含設定密碼)

INSERT INTO mysql.user (Host, User, Password) VALUES ('%', 'jeffrey', PASSWORD('biscuit'));
FLUSH PRIVILEGES;

本質是建立新帳號,需FLUSH PRIVILEGES生效。

方法四:REPLACE覆寫/新增用戶

REPLACE INTO mysql.user (Host, User, Password) VALUES ('%', 'jeffrey', PASSWORD('biscuit'));
FLUSH PRIVILEGES;

若帳號存在則更新,不存在則新增,同樣需FLUSH PRIVILEGES。

方法五:SET PASSWORD語句(無需FLUSH)

SET PASSWORD FOR jeffrey@'%' = PASSWORD('biscuit');

需使用PASSWORD()函數,**不需**執行FLUSH PRIVILEGES,MySQL會自動重載權限。

方法六:GRANT ... IDENTIFIED BY(最推薦,自動加密)

GRANT USAGE ON *.* TO jeffrey@'%' IDENTIFIED BY 'biscuit';

無需PASSWORD()函數,**無需**FLUSH PRIVILEGES,語法最簡潔、最不易出錯。

重要提醒

  • PASSWORD()**非**Unix crypt()演算法,不可互通。
  • 修改root密碼後,若mysqladmin status仍免密登入,需執行mysqladmin reload重載授權表。
  • 生產環境建議統一使用GRANT ... IDENTIFIED BY或SET PASSWORD,減少手動加密與重載疏漏。
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved