整理 MySQL 日常運維五大核心場景實操指令:服務控制、登入連線、用戶授權、資料庫操作、資料備份還原,附權限系統原理說明。
net stop mysql
net start mysql
# 本機
mysql -u root -p
# 遠端
mysql -h 110.110.110.110 -u root -p'abcd123'
# 退出
exit
# 完整權限 (本機)
GRANT SELECT,INSERT,UPDATE,DELETE ON *.* TO 'user1'@'localhost' IDENTIFIED BY 'pass1';
# 任意主機連線
GRANT SELECT,INSERT,UPDATE,DELETE ON *.* TO 'user1'@'%' IDENTIFIED BY 'pass1';
# 無密碼帳號 (需先 CREATE USER)
CREATE USER 'visitor'@'%' IDENTIFIED BY '';
GRANT SELECT ON mydb.* TO 'visitor'@'%';
# 刷新權限
FLUSH PRIVILEGES;
| 操作 | SQL |
|---|---|
| 顯示資料庫 | SHOW DATABASES; |
| 切換資料庫 | USE mysql; |
| 顯示資料表 | SHOW TABLES; |
| 檢視表結構 | DESCRIBE table_name; |
| 建立資料庫 | CREATE DATABASE db_name; |
| 建立資料表 | CREATE TABLE table_name (col_def...); |
| 刪除資料庫/表 | DROP DATABASE db_name; / DROP TABLE table_name; |
| 清空表資料 | DELETE FROM table_name; / TRUNCATE TABLE table_name; |
| 查詢資料 | SELECT * FROM table_name; |
# 單庫
mysqldump --opt test > mysql.test
# 指定用戶
mysqldump -u root -p123456 --databases dbname > mysql.dbname
# 多庫
mysqldump --databases db1 db2 > news.sql
# 遠端
mysqldump -h host -u user -p --databases dbname > file.dump
# 全庫
mysqldump --all-databases > all-databases.sql
mysql < all-databases.sql
mysql -u root -p dbname --force < dump.sql
# 或 mysql 客戶端
SOURCE news.sql;
# 格式:欄位用 Tab 分隔,NULL 用 \N
LOAD DATA LOCAL INFILE "filename" INTO TABLE table_name;
user 表 Host/User/Password)user → db → tables_priv → columns_priv)user 表雙重角色:連線驗證 + 全域權限db 表:資料庫級權限映射CREATE USER 'guest'@'localhost' IDENTIFIED BY '123456';
GRANT SELECT ON mydb.* TO 'guest'@'localhost';
DROP USER 'guest'@'localhost'; -- 5.0.2+ 可刪除任意帳號
RENAME USER 'old'@'%' TO 'new'@'%';
GRANT ... IDENTIFIED BY '' 無法建立無密碼帳號,需先 CREATE USERSUPER, FILE, PROCESS) 必須 ON *.*將此手冊作為運維 SOP 附件,能標準化團隊操作、減少誤操作風險。