針對 Windows 環境,使用 MySQL 免安裝包(綠色版)快速落地,並解決初始化後 root 密碼遺忘或匿名用戶導致無權限的常見問題。
D:\mysql)。MYSQL_HOME=D:\mysqlPath 追加 %MYSQL_HOME%\binmysqld --install MySQL --defaults-file="D:\mysql\my.ini"
my.ini 需預先建立,含 basedir、datadir、port、character_set_server=utf8。
net start MySQL
現象:登入報錯 Access denied for user ''@'localhost',因匿名用戶優先匹配。
net stop MySQLmysqld --defaults-file="D:\mysql\my.ini" --console --skip-grant-tables
此視窗會阻塞,保持開啟。
mysql -uroot mysql
UPDATE user SET authentication_string=PASSWORD('123456') WHERE user='root';
FLUSH PRIVILEGES;
QUIT
net start MySQLmysql -uroot -p123456mysql -uroot -p
DELETE FROM mysql.user WHERE User='';
FLUSH PRIVILEGES;
mysqld --initialize-insecure 生成 data 目錄。my.ini 編碼存為 UTF-8 無 BOM,避免中文亂碼。此流程經多次實測,可在 10 分鐘內完成 Windows MySQL 從零到可用的完整部署。