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

MySQL 入門完整指南:連線、帳號管理與基礎操作

     編輯:MySQL 資料庫相關知識

前言

MySQL 是全球最流行的開源關聯式資料庫。本指南涵蓋從安裝後的第一次連線、修改密碼、建立使用者授權,到資料庫/資料表的基本 DDL 操作,適合零基礎的開發者與維運人員快速上手。

一、連線 MySQL 伺服器

通用語法

mysql -h 主機位址 -u 使用者名稱 -p[密碼]
  • -h:主機 IP 或主機名,本機可省略或用 localhost/127.0.0.1。
  • -u:使用者名稱(預設 root)。
  • -p:密碼。緊接 -p 後無空格直接寫密碼(不安全,僅供測試),或僅輸入 -p 讓終端機提示輸入(推薦)。

範例 1:本機連線(剛安裝完成,root 無密碼)

cd /usr/local/mysql/bin  # 或安裝目錄下的 bin
mysql -u root -p
# 提示輸入密碼時直接按 Enter

成功後出現 mysql> 提示符。

範例 2:遠端連線

mysql -h 192.168.1.100 -u root -p'MyS3cureP@ss'

遠端連線需確保:

  1. 目標主機 bind-address 設為 0.0.0.0 或具體 IP。
  2. 防火牆開放 3306 埠。
  3. 使用者帳號允許遠端登入(CREATE USER 'root'@'%' ... 或 GRANT ... TO 'root'@'%')。

離開 MySQL

EXIT;  # 或 QUIT;、Ctrl+D

二、修改使用者密碼

方法 1:mysqladmin 指令(適用 5.7 之前)

# 為 root 設定初始密碼
mysqladmin -u root password 'NewPass123'

# 變更既有密碼
mysqladmin -u root -p'OldPass' password 'NewPass123'

方法 2:SQL 語句(通用、推薦)

mysql -u root -p
ALTER USER 'root'@'localhost' IDENTIFIED BY 'NewPass123';
FLUSH PRIVILEGES;

MySQL 5.7+ 採用 authentication_string 欄位,ALTER USER 為標準做法;5.6 可用 SET PASSWORD FOR 'root'@'localhost' = PASSWORD('NewPass');。

三、建立新使用者與授權

基本語法

CREATE USER 'username'@'host' IDENTIFIED BY 'password';
GRANT privileges ON db_name.table_name TO 'username'@'host';
FLUSH PRIVILEGES;

範例 1:高風險的全域帳號(僅供測試)

CREATE USER 'test1'@'%' IDENTIFIED BY 'abc123';
GRANT SELECT, INSERT, UPDATE, DELETE ON *.* TO 'test1'@'%';
FLUSH PRIVILEGES;

警告:'%' 允許任意主機連線,生產環境嚴禁使用 root 或高權限帳號搭配 %。

範例 2:安全的本機限定帳號

CREATE USER 'test2'@'localhost' IDENTIFIED BY 'abc123';
GRANT SELECT, INSERT, UPDATE, DELETE ON mydb.* TO 'test2'@'localhost';
FLUSH PRIVILEGES;

僅允許本機連線,且限定資料庫 mydb,符合最小權限原則。

移除密碼(不建議)

ALTER USER 'test2'@'localhost' IDENTIFIED BY '';

四、資料庫與資料表基本操作

顯示資料庫

SHOW DATABASES;

建立/切換/刪除資料庫

CREATE DATABASE mydb CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;
USE mydb;
DROP DATABASE mydb;

建立資料表

CREATE TABLE users (
    id INT UNSIGNED NOT NULL AUTO_INCREMENT PRIMARY KEY,
    username VARCHAR(50) NOT NULL UNIQUE,
    email VARCHAR(100) NOT NULL,
    created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;

顯示資料表結構

DESCRIBE users;  # 或 SHOW COLUMNS FROM users;

刪除資料表

DROP TABLE users;

五、實用操作技巧

  • 多行指令:若忘記分號,直接輸入 ; 再按 Enter 即可送出。
  • 歷史指令:使用 ↑/↓ 方向鍵調閱上一條指令(需支援 readline 的客戶端)。
  • 提示符自訂:在 my.cnf 的 [mysql] 區段加入 prompt=\\u@\\h [\\d]> 可顯示使用者、主機、目前資料庫。

六、後續學習建議

  1. 深入 SELECT 查詢、JOIN 關聯、子查詢。
  2. 掌握 索引設計 與 EXPLAIN 執行計畫 分析。
  3. 學習 交易控制(START TRANSACTION, COMMIT, ROLLBACK)。
  4. 了解 備份與還原(mysqldump, xtrabackup)。

熟練上述基礎操作,即可開始在專案中自信地使用 MySQL。建議搭配官方文件與實際練習,循序漸進建立扎實的資料庫功力。

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