MySQL
文章平均质量分 93
浩骞
做同样的事情,时间不一样,心情不一样,结果也不一样,不忘初衷才能有所收获
展开
-
springboot 中动态切换数据源(多数据源应用设计)
目录数据库项目结构启动类entitycontrollerservicemapper配置文件线程上下文 (DataSourceHolder)动态数据源 DynamicDataSource数据源配置AOP测试验证最近在做一个租户隔离的项目,要求不同租户数据放入不同的数据库实现物理隔离,涉及到多个数据库的应用,除了使用数据库中间件,还想到了一个不错的解决方案,就是动态切换当前请求线程的数据源。所以写篇文章来记录一下。本文使用了 springboot + mybatis-plus项目源码可以参考https原创 2021-09-26 01:17:36 · 5202 阅读 · 0 评论 -
数据库字段为什么要使用NOT NULL
目录1 对程序的影响2 对查询结果的影响2.1 聚合函数count()不准确2.1 = 与 != 失效2.3 NULL与其他值运算结果为NULL2.4 对distinct、group by、order by等排序结果的影响3 对索引的影响4 对存储空间的影响目前大部分的开发都会把字段全部设置成NOT NULL并且给默认值。通常,对于默认值一般这样设置:整形,我们一般使用0作为默认值。字符串,默认空字符串时间,可以默认1970-01-01 08:00:01,或者默认 0000-00-00 0原创 2021-04-12 16:36:12 · 8844 阅读 · 0 评论 -
MySQL 底层原理(面试精华)
目录1 MySQL架构1.1 架构图1.2 SQL语句执行流程2 存储引擎2.1 查看存储引擎2.2 设置存储引擎2.3 文件存储结构对比2.4 InnoDB 与 MyISAM 的比较3 数据类型3.1 CHAR 和 VARCHAR 的区别3.2 BLOB和TEXT区别4 索引4.1 定义4.3 索引的基本语法4.3 索引的优缺点4.4 MySQL索引分类4.5 B-Tree 和 B+Tree 的区别4.6 MySQL索引结构4.6.1 MyISAM主键索引与辅助索引的结构4.6.2 InnoDB主键索引原创 2021-04-09 18:02:41 · 8267 阅读 · 2 评论 -
MySQL 语句的性能优化
目录1 mysql架构介绍1.1 逻辑架构1.2 MySQL存储引擎2. Join查询与索引介绍2.1 Join查询2.1.1 Join 集合关系示意图2.1.2 Join 查询 SQL语句实例2.2 索引介绍2.2.1 索引命名规则2.2.2 查看表中索引2.2.3 索引的数据结构(B+树)2.2.4 索引的选择性2.2.5 性能瓶颈2.2.6 性能优化流程3 explain查看SQL执行计划分析3.1 id - 表的读取顺序3.2 select_type - 查询类型3.3 table - 查询哪张表3原创 2021-02-26 17:51:31 · 529 阅读 · 1 评论 -
mysql 常用sql与基础知识
这里写目录标题1 表的键约束2 表操作3 查询数据3.1 模糊查询 like3.2 查询结果不重复 DISTINCT3.3 排序 sort3.4 分组查询3.5 限制查询结果数量3.6 连接查询3.7 子查询3.8 合并查询 UNION3.9 为字段或者表起别名 AS3.9 使用正则表达式查询 REGEXP4 增删改数据5 索引5.1 设计原则5.2 建表时创建索引5.3 已经存在的表上创建索引5.4 查看索引5.5 删除索引6 视图6.1 创建视图6.2 查看视图6.3 修改视图6.4 删除视图7 数据库原创 2021-02-20 11:30:49 · 145 阅读 · 0 评论 -
spring事务的相关知识点
目录1 事务的传播属性2 事务的隔离级别3 实际应用REQUIRED 传播行为REQUIRES_NEW 传播行为1 事务的传播属性所谓spring事务的传播属性,就是定义多个事务同时存在的时候,spring应该如何处理这些事务的行为。简单来讲就是: 一个开启事务的方法运行在另一个开启了事务的方法中是,当前方法是开启一个新的事物还是使用同一个事务这些属性在TransactionDefinition中定义,具体常量的解释见下:默认的事务传播属性是:Propagation.REQUIRED实际应原创 2021-02-08 23:14:50 · 228 阅读 · 0 评论 -
解决数据库读写分离的延时问题-redis
目录数据库读写分离主从库数据同步延时问题数据库系统架构发展主备架构主从架构主从延时解决办法方案1:数据同步写方案方案2:选择性强制读主库方案3:中间件选择路由Redis缓存路由大法(推荐)总结数据库读写分离主从库数据同步延时问题数据库采用主从架构,数据读写分离,数据查询走的是从库。数据写入都是直接操作主库,后续再同步到从库。由于数据库同步存在延时,这就导致数据同步的这段时间,主从数据将会不一致,从库无法查询到最新的数据。如果你之前的数据库系统架构是单库或者主备结构,当你第一次转到数据读写分离架构,这原创 2020-12-09 11:22:13 · 1667 阅读 · 0 评论 -
数据库设计规范
背景下边分为建表规约、SQL规约、索引规约三个部分,每部分的每一条都有强制、建议两个级别,大家在参考时,根据自己公司的情况来权衡。建表规约【强制】(1) 存储引擎必须使用InnoDB解读:InnoDB支持事物、行级锁、并发性能更好,CPU及内存缓存页优化使得资源利用率更高。【强制】(2)每张表必须设置一个主键ID,且这个主键ID使用自增主键(在满足需要的情况下尽量短),除非在分库分表环境下。解读:由于InnoDB组织数据的方式决定了需要有一个主键,而且若是这个主键ID是单调递增的可以有效提高插转载 2020-11-06 08:54:10 · 304 阅读 · 0 评论 -
MySQL常用语法知识点
1 表的键约束2 表操作3 查询数据 3.1 模糊查询 like 3.2 查询结果不重复 DISTINCT 3.3 排序 sort 3.4 分组查询 3.5 限制查询结果数量 3.6 连接查询 3.7 子查询 3.8 合并查询 UNION 3.9 为字段或者表起别名 AS 3.10 使用正则表达式查询 REGEXP4 增删改数据 4.1 插入 4.2 更新 4.3...原创 2020-08-08 23:05:15 · 283 阅读 · 0 评论