net stop mysql # 停止服務
net start mysql # 啟動服務
# 本機連線
mysql -u root -p
# 遠端連線
mysql -h 192.168.1.100 -u root -p
# 直接帶密碼(不推薦,歷史紀錄會洩露)
mysql -u root -p123456
# 建立用戶並授權(舊版語法)
GRANT SELECT,INSERT,UPDATE,DELETE ON *.* TO 'user1'@'localhost' IDENTIFIED BY 'password1';
# 允許任意主機連線
GRANT SELECT,INSERT,UPDATE,DELETE ON *.* TO 'user1'@'%' IDENTIFIED BY 'password1';
# 移除密碼
GRANT SELECT,INSERT,UPDATE,DELETE ON mydb.* TO 'user1'@'localhost' IDENTIFIED BY '';
| 操作 | 命令 |
|---|---|
| 顯示所有資料庫 | SHOW DATABASES; |
| 使用資料庫 | USE mysql; |
| 顯示所有表 | SHOW TABLES; |
| 檢視表結構 | DESCRIBE 表名; |
| 建立資料庫 | CREATE DATABASE db_name; |
| 刪除資料庫 | DROP DATABASE db_name; |
| 建立表 | USE db_name; CREATE TABLE t (id INT, name VARCHAR(20)); |
| 刪除表 | DROP TABLE t; |
| 清空表資料 | DELETE FROM t; 或 TRUNCATE TABLE t; |
| 查詢所有資料 | SELECT * FROM t; |
# 匯出單庫
mysqldump -u root -p123456 --databases dbname > mysql.dbname
# 匯出多庫
mysqldump -u root -p123456 --databases db1 db2 > multi.sql
# 匯出全庫
mysqldump -u root -p123456 --all-databases > full.sql
# 僅匯出結構(無資料)
mysqldump -u root -p123456 -d dbname > schema.sql
# 匯入 SQL 檔
mysql -u root -p123456 < mysql.dbname
# 或在 mysql 客戶端內執行
mysql> SOURCE /path/to/file.sql;
# 欄位以 Tab 分隔
USE test;
LOAD DATA LOCAL INFILE 'data.txt' INTO TABLE mytable;
# 1. 建庫
CREATE DATABASE MYSQLDATA;
USE MYSQLDATA;
# 2. 建表
CREATE TABLE MYTABLE (name VARCHAR(20), sex CHAR(1));
# 3. 檢視結構
DESCRIBE MYTABLE;
# 4. 插入單筆
INSERT INTO MYTABLE VALUES ('hyq', 'M');
# 5. 批次匯入文字檔
LOAD DATA LOCAL INFILE 'D:/mysql.txt' INTO TABLE MYTABLE;
# 6. 匯入 SQL 腳本
SOURCE D:/mysql.sql;
# 7. 更新資料
UPDATE MYTABLE SET sex='f' WHERE name='hyq';
# 8. 刪除表/庫
DROP TABLE MYTABLE;
DROP DATABASE MYSQLDATA;
SHOW PROCESSLIST; — 查看當前連線/執行緒KILL connection_id; — 終止指定連線SHOW VARIABLES LIKE 'max_connections'; — 查看配置參數SET GLOBAL max_connections=1000; — 動態調整(重啟失效)FLUSH PRIVILEGES; — 重新載入權限表將此速查表加入書籤,日常運維開發即查即用,告別東查西找。