將 MySQL bin 目錄加入系統 Path,便於任意目錄直接調用命令。
變量名: MYSQL_HOME
值: C:\Program Files\MySQL\MySQL Server 8.0
變量名: Path
追加: %MYSQL_HOME%\bin
| 操作 | 命令 (CMD 需管理員權限) |
|---|---|
| 安裝服務 | mysqld --install [ServiceName] (默認服務名 MySQL) |
| 移除服務 | mysqld --remove [ServiceName] |
| 啟動服務 | net start MySQL 或 sc start MySQL |
| 停止服務 | net stop MySQL 或 sc stop MySQL |
# 本地登入 (提示輸入密碼,安全)
mysql -u root -p
# 本地登入 (指定密碼,腳本適用,但進程可見)
mysql -u root -p'password'
# 遠程登入
mysql -h 192.168.1.100 -u root -p
# 修改 root 密碼 (MySQL 8.0+)
mysqladmin -u root -p'old_pass' password 'new_pass'
-- 或登入後:
ALTER USER 'root'@'localhost' IDENTIFIED BY 'new_pass';
-- 1. 建庫 (指定字符集)
CREATE DATABASE `my_db` DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;
-- 2. 創建用戶並授權 (MySQL 8.0+ 分離語法)
CREATE USER 'app_user'@'%' IDENTIFIED BY 'StrongPass123!';
GRANT SELECT, INSERT, UPDATE, DELETE ON `my_db`.* TO 'app_user'@'%';
FLUSH PRIVILEGES;
-- 3. 超級管理員授權 (慎用)
GRANT ALL PRIVILEGES ON *.* TO 'admin'@'%' IDENTIFIED BY 'AdminPass!' WITH GRANT OPTION;
FLUSH PRIVILEGES;
-- 4. 查看用戶權限
SHOW GRANTS FOR 'app_user'@'%';
-- 5. 撤銷權限
REVOKE DELETE ON `my_db`.* FROM 'app_user'@'%';
-- 6. 刪除用戶
DROP USER 'app_user'@'%';
-- 查看實例級字符集
SHOW VARIABLES LIKE 'character_set_%';
SHOW VARIABLES LIKE 'collation_%';
-- 修改庫級字符集 (不影響現有表)
ALTER DATABASE `my_db` CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci;
-- 修改表級字符集 (轉換數據,大表慎用/用工具)
ALTER TABLE `my_table` CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;
-- 導出結構+數據 (單庫)
mysqldump -u root -p --databases my_db > backup.sql
-- 導出僅結構
mysqldump -u root -p --no-data --databases my_db > schema.sql
-- 導入 (系統命令行執行)
mysql -u root -p my_db < backup.sql
-- 客戶端內執行腳本
mysql> USE my_db;
mysql> SOURCE C:/backup.sql; -- 注意正斜槓
-- 查看連線數
SHOW STATUS LIKE 'Threads_connected';
SHOW PROCESSLIST;
-- 查看配置
SHOW VARIABLES LIKE 'max_connections';
SHOW VARIABLES LIKE 'innodb_buffer_pool_size';
-- 查看慢查詢狀態
SHOW VARIABLES LIKE 'slow_query_log%';
SHOW VARIABLES LIKE 'long_query_time';
mysql> EXIT;
mysql> QUIT;
mysql> \q