以下是 MySQL 命令行的核心操作命令详解(基于 MySQL 8.0+ 版本):
 
🔌 1. 连接与退出
 
| 命令 | 作用 | 示例 | 
|---|
mysql -u 用户名 -p | 连接本地 MySQL | mysql -u root -p → 输入密码 | 
mysql -h 主机 -P 端口 -u 用户 -p | 连接远程 MySQL | mysql -h 192.168.1.10 -P 3306 -u admin -p | 
exit 或 \q | 退出命令行 | exit | 
\c | 取消当前输入的命令 | 输入错误命令时按 \c + Enter 终止 | 
 
 
🗃️ 2. 数据库操作
 
| 命令 | 作用 | 示例 | 
|---|
SHOW DATABASES; | 显示所有数据库 |  | 
CREATE DATABASE 库名; | 创建数据库 | CREATE DATABASE shop; | 
USE 库名; | 切换当前数据库 | USE shop; | 
DROP DATABASE 库名; | 删除数据库 | DROP DATABASE old_db; | 
SELECT DATABASE(); | 查看当前使用的数据库 |  | 
 
 
📊 3. 表操作
 
| 命令 | 作用 | 示例 | 
|---|
SHOW TABLES; | 显示当前库所有表 |  | 
DESC 表名; 或 DESCRIBE 表名; | 查看表结构 | DESC users; | 
SHOW CREATE TABLE 表名; | 查看建表语句 | SHOW CREATE TABLE orders; | 
CREATE TABLE 表名 (列定义...); | 创建表 | sql<br>CREATE TABLE users (<br> id INT PRIMARY KEY,<br> name VARCHAR(20)<br>); | 
ALTER TABLE 表名 ... | 修改表结构 | ALTER TABLE users ADD email VARCHAR(50); | 
DROP TABLE 表名; | 删除表 | DROP TABLE temp_data; | 
RENAME TABLE 旧表名 TO 新表名; | 重命名表 | RENAME TABLE old TO new; | 
 
 
📝 4. 数据操作(CRUD)
 
| 命令 | 作用 | 示例 | 
|---|
INSERT INTO 表名 (列...) VALUES (值...); | 插入数据 | INSERT INTO users (id, name) VALUES (1, 'Alice'); | 
SELECT * FROM 表名; | 查询所有数据 | SELECT * FROM products; | 
SELECT 列1,列2 FROM 表名 [WHERE 条件]; | 条件查询 | SELECT name, price FROM products WHERE price > 100; | 
UPDATE 表名 SET 列=值 [WHERE 条件]; | 更新数据 | UPDATE users SET name='Bob' WHERE id=1; | 
DELETE FROM 表名 [WHERE 条件]; | 删除数据 | DELETE FROM logs WHERE date < '2023-01-01'; | 
 
 
👥 5. 用户与权限
 
| 命令 | 作用 | 示例 | 
|---|
CREATE USER '用户'@'主机' IDENTIFIED BY '密码'; | 创建用户 | CREATE USER 'dev'@'%' IDENTIFIED BY 'Pass123'; | 
GRANT 权限 ON 库.表 TO '用户'@'主机'; | 授权 | GRANT SELECT, INSERT ON shop.* TO 'dev'@'%'; | 
REVOKE 权限 ON 库.表 FROM '用户'@'主机'; | 撤销权限 | REVOKE DELETE ON shop.* FROM 'dev'@'%'; | 
SHOW GRANTS FOR '用户'@'主机'; | 查看用户权限 | SHOW GRANTS FOR 'dev'@'%'; | 
SET PASSWORD FOR '用户'@'主机' = '新密码'; | 修改用户密码 | SET PASSWORD FOR 'root'@'localhost' = 'NewPass456'; | 
DROP USER '用户'@'主机'; | 删除用户 | DROP USER 'test'@'localhost'; | 
 
 
⚙️ 6. 系统与状态
 
| 命令 | 作用 | 示例 | 
|---|
SHOW VARIABLES; | 查看系统变量 | SHOW VARIABLES LIKE '%timeout%'; | 
SHOW STATUS; | 查看服务器状态 | SHOW STATUS LIKE 'Threads_%'; | 
SHOW PROCESSLIST; | 查看当前连接会话 |  | 
KILL 进程ID; | 终止查询进程 | KILL 15; | 
SOURCE SQL文件路径; | 执行 SQL 脚本文件 | SOURCE /data/init_db.sql; | 
\s 或 STATUS | 查看服务器版本/状态摘要 |  | 
 
 
✨ 7. 命令行快捷操作
 
| 命令 | 作用 | 
|---|
\G | 垂直显示结果(替代;) | 
\T 文件路径 | 开启日志记录(tee功能) | 
\t | 关闭日志记录 | 
\u 数据库名 | 快速切换数据库 | 
\! 系统命令 | 执行操作系统命令 | 
 
 💡 注意:
 - 所有命令以 
; 或 \G 结束才能执行 - 大小写:SQL 关键字不区分,数据库/表名 Linux 下区分大小写