mysql
文章平均质量分 93
原理、函数应用、底层原理分析、场景应用
暮色里de白雪檐
相信自己,人生之美在于当下
人生四季,寒暑交替,笑看起起落落
心若简单,生活就简单
展开
-
SpringBoot中多数据源灵活切换解决方案
本篇内容介绍了“SpringBoot中如何使用Dynamic Datasource配置多数据源”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!支持 数据源分组 ,适用于多种场景 纯粹多库 读写分离 一主多从 混合模式。支持无数据源启动,支持配置懒启动数据源(3.3.2+)。支持数据库敏感配置信息 加密 ENC()。支持每个数据库独立初始化表结构schema和数据库database。原创 2024-04-26 18:11:35 · 1118 阅读 · 3 评论 -
mysql锁的实际场景分析
首先判断该where的条件列是否命中索引了,注意是命中哈,也就说即使加了索引但是实际上并未命中,都是导致全表扫描,给所有的数据加上了行锁+间隙锁,相当于表锁如果命中了索引,如果更新操作未提交事务,此时记录不存在那么就会产生间隙锁,存在就行锁,也可能两个锁同时存在,如果记录存在那一定是行锁如果命中了索引,如果插入操作未提交事务,一定是行锁,不会产生间隙锁,及时事务未提交也不会影响别的事务进行更新或者插入操作。原创 2023-12-27 17:41:01 · 696 阅读 · 0 评论 -
【Maxwell】MySQL数据监听
我们都知道随着业务的发展,监听数据库的数据变更及时性是必须的,虽然我们可以在入库之前进行处理,但是有个问题就是事务的一致性不好掌控,而且很多业务都是微服务的,那么不在一个微服务中,可能有需要跨服务去调用,那么此时直接去监听mysql的binlog来实现数据的操作既可以实现及时性又可以和业务解耦目前市面上比较流行的就是cancel和maxwell,那么我们该如何去选型呢?这里我说下我的选型历程。原创 2023-05-05 14:34:34 · 915 阅读 · 1 评论 -
隐式转换为什么会导致MySQL索引失效-深度分析
背景关于MySql索引失效的几种原因分析,之前在这篇文章中已经有过整理,本文主要来分析一下,文章中提到的:如果是数值类型,则右边无论是带引号还是不带引号都可以走索引案例CREATE TABLE t_user_demo (id INT(11) UNSIGNED NOT NULL AUTO_INCREMENT COMMENT '自增id',name VARCHAR(20) DEFAULT NULL COMMENT '姓名',phone char(11) DEFAULT NULL COMMENT '手翻译 2022-05-06 16:45:38 · 910 阅读 · 0 评论 -
Limit分页原理-如何优化?
limit分页原理当我们翻到最后几页时,查询的sql通常是:select * from table where column=xxx order by xxx limit 1000000,20。查询非常慢。但是我们查看前几页的时候,速度并不慢。这是因为limit的偏移量太大导致的。MySql使用limit时的原理是(用上面的例子举例):MySql将查询出1000020条记录。然后舍掉前面的1000000条记录。返回剩下的20条记录。问题:对于有大数据量的mysql表来说,使用LIMIT分页存在原创 2021-12-15 14:32:04 · 1696 阅读 · 0 评论 -
业务实战中如何利用MySQL函数来解决
随着我们业务越来越复杂的情况下,完全基于java后台来解决首先是很麻烦,而且性能带来降低,代码的可读性下降,这个时候就需要一些MySQL的函数来解决了,这篇文章对于常见的MySQL函数不予介绍concat函数使用方法:CONCAT(str1,str2,…)返回结果为连接参数产生的字符串。如有任何一个参数为NULL ,则返回值为 NULL,不是“NULL”注意:如果所有参数均为非二进制字符串,则结果为非二进制字符串。如果自变量中含有任一二进制字符串,则结果为一个二进制字符串。一个数字参数被原创 2020-11-12 17:09:03 · 328 阅读 · 0 评论 -
MySql 索引底层数据结构和索引优化原则
索引优化有很作最佳实践原则,下面对常用原则进行分析。我觉得在看本博文之前一定要先了解MySQL底层的索引原理,下面给大家转载两篇博文MySql索引底层数据结构和算法MySql explan执行计划详解优化原则实例sql准备CREATE TABLE `user` ( `id` int(11) NOT NULL AUTO_INCREMENT, `user_name` varchar(24) NOT NULL DEFAULT '' COMMENT '用户姓名', `user_age` int(原创 2020-10-22 23:11:28 · 288 阅读 · 0 评论 -
快速掌握MySQL数据库的各种锁机制
在并发访问情况下,很有可能出现不可重复读等等读现象。为了更好的应对高并发,封锁、时间戳、乐观并发控制(乐观锁)、悲观并发控制(悲观锁)都是并发控制采用的主要技术方式。锁分类①、按操作划分:DML锁,DDL锁②、按锁的粒度划分:表级锁、行级锁、页级锁③、按锁级别划分:共享锁、排他锁④、按加锁方式划分:自动锁、显示锁⑤、按使用方式划分:乐观锁、悲观锁乐观锁和悲观锁乐观并发控制和悲观并发控制是并发控制采用的主要方法。乐观锁和悲观锁不仅在关系数据库里应用,在Hibernate、Memcach转载 2020-09-23 16:31:25 · 231 阅读 · 1 评论