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。
相关推荐
辞旧 lekkk16 小时前
【Qt】信号和槽
linux·开发语言·数据库·qt·学习·mysql·萌新
2301_8092047017 小时前
JavaScript中严格模式use-strict对引擎解析的辅助.txt
jvm·数据库·python
zjy2777718 小时前
mysql如何选择合适的索引类型_mysql索引设计实战
jvm·数据库·python
笨蛋不要掉眼泪18 小时前
Mysql架构揭秘:update语句的执行流程
数据库·mysql·架构
万邦科技Lafite18 小时前
京东item_get接口实战案例:实时商品价格监控全流程解析
java·开发语言·数据库·python·开放api·淘宝开放平台
秋919 小时前
ruoyi项目更换为mysql9.7.0数据库
数据库
Andya_net19 小时前
MySQL | MySQL 8.0 权限管理实践-精确赋予库、表只读等权限
android·数据库·mysql
筑梦之路20 小时前
harbor数据库报错权限异常如何处理——筑梦之路
数据库·harbor
czlczl2002092521 小时前
理解 MySQL 行锁:两阶段锁协议与热点更新优化
数据库·mysql
AllData公司负责人21 小时前
通过Postgresql同步到Doris,全视角演示AllData数据中台核心功能效果,涵盖:数据入湖仓,数据同步,数据处理,数据服务,BI可视化驾驶舱
java·大数据·数据库·数据仓库·人工智能·python·postgresql