MySQL 是大型架构的核心,下面我将详解 15 个最常用的 MySQL 命令,帮你快速掌握日常操作与性能调优。
1. 登录 MySQL
使用 root 用户登录:
mysql -u root -p
指定 IP、端口登录:
mysql -h 127.0.0.1 -P 3306 -u root -p
参数说明:
| 参数 |
含义 |
| -u |
用户名 |
| -p |
密码 |
| -h |
主机 |
| -P |
端口 |
2. 查看所有数据库
SHOW DATABASES;
常见输出:
information_schema
mysql
performance_schema
test
系统数据库作用:
| 数据库 |
作用 |
| mysql |
用户权限 |
| information_schema |
元数据 |
| performance_schema |
性能监控 |
3. 创建数据库
CREATE DATABASE demo;
指定字符集(推荐 utf8mb4):
CREATE DATABASE demo
CHARACTER SET utf8mb4;
4. 切换数据库
USE demo;
后续执行的 SQL 默认都在 demo 库下。
5. 查看当前数据库
SELECT DATABASE();
输出:
demo
6. 查看所有表
SHOW TABLES;
输出示例:
user
order
product
7. 创建表
CREATE TABLE user(
id BIGINT PRIMARY KEY AUTO_INCREMENT,
name VARCHAR(50),
age INT
);
关键字段类型:
| 类型 |
作用 |
| BIGINT |
大整数 |
| VARCHAR |
变长字符串 |
| AUTO_INCREMENT |
自增主键 |
8. 查看表结构
DESC user;
或者查看建表语句:
SHOW CREATE TABLE user;
9. 插入数据
单行插入:
INSERT INTO user(name, age)
VALUES ('Tom', 20);
批量插入(生产推荐):
INSERT INTO user(name, age)
VALUES
('Tom', 20),
('Jack', 22),
('Lucy', 18);
批量插入能显著提升写入性能。
10. 查询数据
查询全部列:
SELECT * FROM user;
条件查询(年龄大于 20):
SELECT * FROM user
WHERE age > 20;
按年龄倒序排序:
SELECT * FROM user
ORDER BY age DESC;
分页查询(前 10 条):
SELECT * FROM user
LIMIT 0, 10;
11. 更新数据
UPDATE user
SET age = 25
WHERE id = 1;
一定要带上 WHERE 条件,否则会更新全表,造成严重生产事故。
12. 删除数据
删除指定数据:
DELETE FROM user
WHERE id = 1;
危险操作——无条件删除全表(生产务必避免):
DELETE FROM user;
13. 添加索引
创建普通索引:
CREATE INDEX idx_name
ON user(name);
查看索引:
SHOW INDEX FROM user;
索引本质为 B+Tree,是加速查询的关键手段。
14. 查看执行计划(性能优化核心)
EXPLAIN
SELECT * FROM user
WHERE name = 'Tom';
这是 MySQL 性能优化中最核心的命令。重点字段解读:
| 字段 |
含义 |
| type |
扫描类型 |
| key |
使用的索引 |
| rows |
扫描行数 |
| Extra |
额外信息 |
通过 type、key、rows 等指标,可以判断 SQL 是否高效、是否需要优化索引。
15. 查看当前连接
SHOW PROCESSLIST;
输出列头:
Id User Host db Command Time State
这个命令常用于排查:
它将当前会话的执行状况一目了然地展示出来,是线上排障的利器。
以上涵盖了 MySQL 日常操作与性能调优的核心命令。更多数据库与架构专题深度解析,欢迎访问云栈社区。