Mysql--11

一、索引语法

1. 创建索引

sql

复制代码
CREATE [UNIQUE|FULLTEXT] INDEX index_name ON table_name (index_col_name,...);
  • UNIQUE:唯一索引,保证列值不重复。
  • FULLTEXT:全文索引,用于文本搜索。
  • 普通索引:不加修饰词即可创建。

2. 查看索引

sql

复制代码
SHOW INDEX FROM table_name;

查看表中所有索引的详细信息。

3. 删除索引

sql

复制代码
DROP INDEX index_name ON table_name;

删除指定名称的索引。


二、SQL 执行频率统计

通过 SHOW [SESSION|GLOBAL] STATUS 命令查看数据库操作频次:

sql

复制代码
SHOW GLOBAL STATUS LIKE 'Com_______';
  • 可统计 Com_select(查询)、Com_insert(插入)、Com_update(更新)、Com_delete(删除)等操作的执行次数。
  • GLOBAL 表示全局统计,SESSION 表示当前会话统计。

三、慢查询日志(性能瓶颈定位)

1. 作用

记录所有执行时间超过 long_query_time(默认 10 秒)的 SQL 语句,用于定位慢查询。

2. 配置开启(my.cnf 配置文件)

ini

复制代码
# 开启慢查询日志
slow_query_log=1
# 设置慢查询阈值为 2 秒
long_query_time=2
  • 配置后需重启 MySQL 服务生效。
  • 日志文件默认路径:/var/lib/mysql/localhost-slow.log

四、Profile 性能分析

1. 作用

分析 SQL 语句在执行过程中各个阶段的耗时与资源消耗。

2. 常用命令

sql

复制代码
-- 查看所有 SQL 的耗时概况
show profiles;

-- 查看指定 query_id 的 SQL 各阶段耗时
show profile for query query_id;

-- 查看指定 query_id 的 SQL CPU 使用情况
show profile cpu for query query_id;
  • query_idshow profiles 结果提供,用于定位具体 SQL。
相关推荐
❀͜͡傀儡师2 小时前
docker部署WhoDB开源轻量级数据库管理工具
数据库·docker·开源
皙然2 小时前
Redis八大核心数据类型详解:从底层实现到实战落地
数据库·redis·bootstrap
时光追逐者3 小时前
一款免费、简单、高效的在线数据库设计工具
数据库·mysql·oracle·sql server
another heaven3 小时前
【软考 2026 最新版 NoSQL 数据库全分类】
数据库·nosql
满天星83035773 小时前
【MySQL】表的操作
linux·服务器·数据库·mysql
yashuk3 小时前
Ubuntu 系统下安装 Nginx
数据库·nginx·ubuntu
F1FJJ3 小时前
VS Code 里管理 PostgreSQL,有哪些选择?主流扩展横向对比
网络·数据库·postgresql·容器
Bdygsl3 小时前
MySQL(8)—— 事务
数据库·mysql
IvorySQL3 小时前
直播回顾| PostgreSQL 18.3 x IvorySQL 5.3:开启 AI 数据库新纪元
数据库·postgresql·开源