全网都在说一个错误的结论 大家在背 MySQL 八股文的时候,是不是经常看到这句话。 联合索引的最左匹配原则会一直向右匹配直到遇到范围查询(>、<、between、like) 就会停止匹配。 我随手在网上搜了下, 基本全部都是这个结论,似乎这个结论大家都耳濡目染了,应该大多数人都觉得这个结论是正确的吧。 我在昨晚折腾了几个实验,发现这个结论并不全对!去掉 「between 和 like 」这个 数据结构与算法 2025年04月17日 167 点赞 0 评论 1333 浏览
elasticsearch分片unassign问题处理 1、查询集群状态(当前为yellow) curl -s ?v 2、查询分片情况 curl -s |grep -i unassign 看到有四个分片是 unassign,目前都是副本分区,不是主分区 item_sold_v5 5 r UNASSIGNED item 数据结构与算法 2025年04月17日 170 点赞 0 评论 2702 浏览
Spring-webflux实战 1. pom.xml引入以下内容,主要是支持在响应式的环境下对关系型数据库进行访问 <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-r2dbc< 数据结构与算法 2025年04月17日 155 点赞 0 评论 15175 浏览
MySQL调优——数据类型和schema优化 范式的作用:解决数据冗余。 反范式:让数据冗余。 实际情况看业务需求 推荐使用代理主键:提高可维护性 建议把数据库的字符集设置成:utf8mb4,因为该字符集只能匹配两个字符长度的中文,而实际还有3个长度的中文。比如“中”用3个字符集来保存的。所以要用utf8mb4来存储。 对于建表时的主键选择: 代理主键:与业务无关的主键如:id,无意义的数字序列 自然主键:事物属性中的自然唯一标识。和我们的业 数据结构与算法 2025年04月18日 106 点赞 0 评论 20008 浏览
276. 【运维】日志太重要了! 前天、昨天、今天,三天的摸索终于找着原因了!3 月初的时候客户那边服务器宕机,缺失了数据,负责这块的一个小哥出了个馊主意,从其他地方弄来了数据导入到数据库里,结果把主键ID,弄得特别大。 我们的 ETL 工具,在做数据抽取的时候,会检查主键 ID,找到数据库里已存在的最大主键 ID,根据 ID 找到对应的时间,然后从那个时间点以后开始从其他数据源抽取数据。问题就在于那个小哥把搞来的数据生成了些比之 数据结构与算法 2025年04月18日 176 点赞 0 评论 8927 浏览
531.【博客开发】服务端接口实现(一) 由于整个博客是前后端分离的,并且接口规范主要使用的是 graphql(对于前端的界面不会有什么侵入性)。所以我这先把服务端的接口给实现了。 一、实体类实现 在做服务端——数据库表结构设计时,已经实现完了。 二、实体查询、删除、创建的数据库访问代码实现 由于所有维度数据访问接口约定为:全部支持分页。因此服务端无须做访问单条数据的代码实现。(即使是单条数据,也返回一个列表)(也是为了简化考虑)。 1. 数据结构与算法 2025年04月18日 119 点赞 0 评论 19567 浏览
Select进阶查询·连接查询 一、连接查询定义: 把多张表通过连接条件临时组成1张新表,在临时的新表里有连接表的所有表头和数据。 连接查询分类:内连接、外连接、全连接 二、连接语法结构: 内连接-语法格式: SELECT 表头名列表 FROM 表1 INNER JOIN 表2; SELECT 表头名列表 FROM 表1 INNER JOIN 表2 ON 连接条件; SELECT 表头名列表 FR 数据结构与算法 2025年04月18日 79 点赞 0 评论 13041 浏览
多线程事务怎么回滚 背景介绍 1.最近有一个大数据量插入的操作入库的业务场景,需要先做一些其他修改操作,然后在执行插入操作,由于插入数据可能会很多,用到多线程去拆分数据并行处理来提高响应时间,如果有一个线程执行失败,则全部回滚. 2.在spring中可以使用@Transactional注解去控制事务,使出现异常时会进行回滚,在多线程中,这个注解则不会生效,如果主线程需要先执行一些修改数据库的操作,当子线程在进行处理出 数据结构与算法 2025年04月18日 49 点赞 0 评论 12279 浏览
Spring Security 中,想在权限中使用通配符,怎么做? 小伙伴们知道,在 Shiro 中,默认是支持权限通配符的,例如系统用户有如下一些权限: system:user:add system:user:delete system:user:select system:user:update ... 现在给用户授权的时候,我们可以像上面这样,一个权限一个权限的配置,也可以直接用通配符: system:user:* 这个通配符就表示拥有针对用户的所有 数据结构与算法 2025年04月18日 121 点赞 0 评论 19591 浏览
ShardingJDBC 分库分表详解 一、ShardingSphere概述 1.1、ShardingSphere概述 Apache ShardingSphere 是一套开源的分布式数据库解决方案组成的生态圈,它由 JDBC、Proxy 和 Sidecar(规划中)这 3 款既能够独立部署,又支持混合部署配合使用的产品组成。 它们均提供标准化的数据水平扩展、分布式事务和分布式治理等功能,可适用于如 Java 同构、异构语言、云原生等各种 数据结构与算法 2025年04月18日 42 点赞 0 评论 10835 浏览