首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 數據庫知識 >  >> MySQL 資料庫 >> MySQL 綜合教學

MySQL 5.6.20 安裝後無法登入?完整解決方案與使用者管理指南

     編輯:MySQL 綜合教學

MySQL 5.6.20 安裝後無法登入?完整解決方案與使用者管理指南

全新安裝 MySQL 5.6.20 後,許多使用者會遇到無法以 root 身分登入的問題。本文提供逐步解決方案,並整理使用者建立、授權、密碼修改等實用指令,幫助你快速完成資料庫初始化與權限配置。

Windows 環境下的標準初始化流程

  1. 依提示完成 MySQL 安裝
  2. 開啟 CMD,切換至安裝目錄的 bin 資料夾(例如:cd C:\Program Files\MySQL\MySQL Server 5.6\bin)
  3. 註冊 MySQL 為系統服務:mysqld -install MySQL
  4. 啟動服務:net start MySQL
  5. 以 root 登入(預設密碼為空):mysql -u root -p(直接按 Enter)
  6. 執行以下 SQL 設定 root 密碼:
SHOW DATABASES;
USE mysql;
SET PASSWORD FOR 'root'@'localhost' = PASSWORD('123456');
QUIT;

建立遠程存取帳號與權限管理

建立具備完整權限的遠程帳號

-- 建立可從任意 IP 存取的 user 帳號,密碼 123456
GRANT ALL PRIVILEGES ON *.* TO 'user'@'%' IDENTIFIED BY '123456' WITH GRANT OPTION;
FLUSH PRIVILEGES;

-- 若遠程無法連線,請檢查防火牆是否開放 3306 埠

建立限定資料庫存取的帳號

-- 帳號 user1 僅能存取 db123 資料庫,密碼 333333
GRANT ALL PRIVILEGES ON db123.* TO 'user1'@'%' IDENTIFIED BY '333333' WITH GRANT OPTION;
FLUSH PRIVILEGES;

-- 帳號 user2 僅能從 192.168.104.* 網段存取 db123,密碼 666666
GRANT ALL PRIVILEGES ON db123.* TO 'user2'@'192.168.104.%' IDENTIFIED BY '666666' WITH GRANT OPTION;
FLUSH PRIVILEGES;

完整使用者生命週期管理

1. 建立使用者(傳統方式)

-- 以 root 登入
mysql -u root -p

-- 插入使用者記錄
INSERT INTO mysql.user (Host, User, Password) VALUES ('localhost', 'phplamp', PASSWORD('1234'));
FLUSH PRIVILEGES;

2. 授權操作

-- 建立專屬資料庫
CREATE DATABASE phplampDB;

-- 授予 phplamp 對 phplampDB 的所有權限
GRANT ALL PRIVILEGES ON phplampDB.* TO 'phplamp'@'localhost' IDENTIFIED BY '1234';
FLUSH PRIVILEGES;

-- 僅授予特定權限(如 SELECT, UPDATE)
GRANT SELECT, UPDATE ON phplampDB.* TO 'phplamp'@'localhost' IDENTIFIED BY '1234';
FLUSH PRIVILEGES;

3. 刪除使用者

DELETE FROM mysql.user WHERE User='phplamp' AND Host='localhost';
FLUSH PRIVILEGES;
DROP DATABASE phplampDB;

4. 修改密碼

UPDATE mysql.user SET Password=PASSWORD('新密碼') WHERE User='phplamp' AND Host='localhost';
FLUSH PRIVILEGES;

三種建立使用者方式比較

方式指令範例特點
CREATE USERCREATE USER 'aa'@'%' IDENTIFIED BY '123456';語法標準,僅建立帳號不授權
GRANTGRANT SELECT ON *.* TO 'joe'@'10.163.225.87' IDENTIFIED BY '123';建立與授權一次完成
直接操作 mysql.userINSERT INTO user (host,user,password) VALUES ('%','jss',PASSWORD('jss'));底層操作,需手動 FLUSH PRIVILEGES

密碼修改三種方法

  • mysqladmin: mysqladmin -u root -p123 password 456
  • UPDATE mysql.user: 直接修改 user 表後 FLUSH PRIVILEGES
  • SET PASSWORD: SET PASSWORD FOR 'root'@'localhost' = PASSWORD('newpass');

掌握這些指令,你將能輕鬆應對 MySQL 從安裝部署到日常權限維護的各種場景。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved