四时宝库

程序员的知识宝库

我这么久,才弄清楚mysql的触发器、视图、索引,受益匪浅

在满足对某张表中数据的增、删、改的情况下,自动触发的功能称之为触发器。视图就是通过查询得到一张虚拟表,然后将标结果保存下来,下次直接使用即可。索引在MySQL中也叫做“键”,是存储引擎用于快速找到记录的一种数据结构。

触发器

触发程序(trigger)是一种特殊的存储过程,它的执行不是由程序调用,也不是手工启 动,而是通过事件进行触发来被执行的,当对一个表进行操作(insert,delete,update)时就会激活它并执行。触发程序经常用于加强数据的完整性约束和业务规则 等。触发程序类似于约束,但比约束更灵活,具有更精细和更强大的数据控制能力。触发 程序的优点如下。

深入理解 Mysql 索引底层原理(mysql 索引原则)

一步一步推导出 Mysql 索引的底层数据结构。

Mysql 作为互联网中非常热门的数据库,其底层的存储引擎和数据检索引擎的设计非常重要,尤其是 Mysql 数据的存储形式以及索引的设计,决定了 Mysql 整体的数据检索性能。

MySQL为什么有时候会选错索引?(mysql走不到索引原因)

在MySQL中一张表其实是可以支持多个索引的。但是,你写SQL语句的时候,并没有主动指定使用哪个索引。也就是说,使用哪个索引是由MySQL来确定的。

你写的 SQL 查询为什么总是慢?揭秘 MySQL 索引机制与联合索引

后端开发的小伙伴们!是不是经常有这样的困扰?自己反复测试、精心编写的 SQL 查询语句,在测试环境里跑得顺风顺水,可一旦部署到生产环境,查询速度就直线下降,甚至还会触发系统响应超时警报,紧接着就是产品经理的连环追问和领导投来质疑的目光。别慌!其实很大一部分原因,就藏在你对 MySQL 索引机制的掌握程度里,尤其是联合索引的使用,稍有不慎就容易踩坑!

mysql 索引失效总结(mysql导致索引失效)

首先我们还是先把表结构说下:用户表tb_user结构如下:

CREATE TABLE `tb_user` (
  `id` int(11) NOT NULL AUTO_INCREMENT COMMENT '主键',
  `name` varchar(50) NOT NULL COMMENT '用户名',
  `phone` varchar(11) NOT NULL COMMENT '手机号',
  `email` varchar(100) DEFAULT NULL COMMENT '邮箱',
  `profession` varchar(11) DEFAULT NULL COMMENT '专业',
  `age` tinyint(3) unsigned DEFAULT NULL COMMENT '年龄',
  `gender` char(1) DEFAULT NULL COMMENT '性别 , 1: 男, 2: 女',
  `status` char(1) DEFAULT NULL COMMENT '状态',
  `createtime` datetime DEFAULT NULL COMMENT '创建时间',
  PRIMARY KEY (`id`),
  KEY `index_user_pro_age_sta` (`profession`,`age`,`status`)
) ENGINE=InnoDB AUTO_INCREMENT=25 DEFAULT CHARSET=utf8

MySQL 从入门到精通(六) SQL性能分析及索引使用规则

SQL性能分析工具有助于我们能够快速定位哪些SQL语句执行效率低下,从而有针对性的进行优化,这里我们优化的主要语句是SQL的DQL语句也就是查询语句。而在优化select查询语句的时候呢,索引的优化占据相当高的比重。

首先我们得知道MySQL服务器中SQL语句的执行频率如何,可通过show [sessison|global] status 命令查服务器的状态,然后通过show global status like 'Com_______'; 查看当前数据库的insert、update、delete、select的访问频次。

面试题:Mysql的索引是基于什么?(mysql的索引实现原理)

MySQL的索引主要基于B+树数据结构实现,这种设计在数据库系统中具有显著的优势,尤其在处理大规模数据和高并发查询时。以下是详细的解析:

MySQL索引设计的艺术:你的表该建多少个索引才健康?

作为程序员,你一定听过这样的矛盾:DBA总想删索引提升写性能,开发总想加索引优化查询速度。一张表到底该建多少个索引?这个让无数团队头疼的问题,今天我们用「空间换时间」的底层逻辑来破解。

作为程序员,你一定听过这样的矛盾:DBA总想删索引提升写性能,开发总想加索引优化查询速度。一张表到底该建多少个索引?这个让无数团队头疼的问题,今天我们用

MySQL合集-索引详解(mysql索引的用法)


背景知识

  • MySQL数据存储在磁盘里,影响查询速度的根本是磁盘的读写。
  • 局部性原理:CPU访问存储器时,无论是存取指令还是存取数据,所访问的存储单元都趋于聚集在一个较小的连续区域中。

create index a on t(ct DESC)mysql8索引可以指定排序方式提高性能

MySQL在创建索引的时候如果不指定排序方式默认是按照升序排列,这也是B+tree的默认规则。在MySQL8之前只能是按照升序排列,即使指定了倒序也不会生效,但是MySQL8之后新加了倒序索引,在某些特定场景下使用可以有效提高查询性能。

索引反向扫描

很多时候我们会根据时间进行倒序排序,但是建立的索引都是正序,所以对于MySQL来说会反向扫描数据排序,这个过程对单条sql来说性能影响不大,所以不用太担心,但是某些场景来说会有些影响。

<< < 28 29 30 31 32 33 34 35 36 37 > >>
控制面板
您好,欢迎到访网站!
  查看权限
网站分类
最新留言
    友情链接