数据库(DataBase)
文章平均质量分 68
这里介绍个人对数据库的一些理解与碰到的一些坑
李桥s2008100262
天道酬勤
展开
-
提高数据库左模糊查询性能
提高数据库左模糊查询性能原创 2022-10-09 16:10:59 · 401 阅读 · 0 评论 -
mysql数据库递归访问数据
针对有级联关系的表进行本体递归原创 2022-10-04 22:37:06 · 251 阅读 · 0 评论 -
给实体类增加属性无须给表增加字段
目录1、问题背景2、解决方案3、代码示例3.1实体类需要继承一个CostBaseEntity基类3.2保存实体类自定义字段3.3查询实体类自定义字段3.4columnNameAndColumnValueMap属性扁平化3.4.1如何接收前端自定义字段3.4.2如何向前端输出自定义字段4、总结4.1优点4.2缺点1、问题背景随着系统的运行,由于需求不断的迭代,业务不断的深入,会发现我们当属对一个实体进行表结构设计满足不了当前、未来...原创 2022-05-11 10:42:32 · 958 阅读 · 0 评论 -
sql优化案例分析(7)
sql优化案例分析(7)原创 2022-04-06 12:30:20 · 259 阅读 · 0 评论 -
sql优化案例分析(6)
sql优化案例分析(6)原创 2022-04-06 12:06:56 · 313 阅读 · 1 评论 -
sql优化案例分析(5)
sql优化案例分析(5)原创 2022-04-06 10:16:48 · 121 阅读 · 0 评论 -
尽量选择基数比较大的列创建索引
原创 2022-04-04 19:30:31 · 398 阅读 · 0 评论 -
sql优化案例分析(4)
目录1、Multi-Range Read 纠错2、Multi-Range Read 原理3、实验3.1 无MMR会话3.2有MMR会话4、总结1、Multi-Range Read 纠错写本文的目的是对Multi-Range Read提出疑问,按照《MySQL技术内幕 InnoDB存储引擎 第2版.pdf》所写,发现MRR基本对于sql优化的作用微乎其微,基本没有,所以以后,再碰到类似问题时,也不需要关注这个点。2、Multi-Range Read 原理...原创 2022-04-04 12:46:06 · 662 阅读 · 0 评论 -
sql优化案例分析(3)
目录1、使用索引提示来优化sql1.1索引提示原理1.2问题描述1.3优化方案1.3.1重写sql1.3.2使用索引提示1.4总结1、使用索引提示来优化sql参考文档:force index mysql_mysql force index 优化案例1.1索引提示原理1.2问题描述有两张表,员工表:employees,员工工资表:salaries员工表:employees,数据大概3...原创 2022-04-03 17:27:36 · 761 阅读 · 0 评论 -
sql优化案例分析(2)
1、隐式类型转换&Or条件导致索引失效参考文档:隐式类型转换&Or条件导致索引失效1.1问题描述SELECT DISTINCT m1.meetingid AS meetingid, m1.starttime AS START, m1.endtime AS END, m1.title AS title, j.userid AS uid, j.type AS TYPE, m1.cuserid AS cuserid FROM...原创 2022-04-03 14:19:54 · 1113 阅读 · 0 评论 -
sql优化案例分析(1)
目录1、mysql大表的深度分页慢sql案例2、使用覆盖索引解决慢sql案例1、mysql大表的深度分页慢sql案例2、使用覆盖索引解决慢sql案例原创 2022-04-02 16:34:24 · 1256 阅读 · 0 评论 -
数据库规范
0、前置说明 费控系统的数据库会部署到不同的环境中,要适配:mysql、oracle、postgresql、达梦数据库。所以我们做数据库设计时,一定要考虑到多种数据库的情况,尽量使用sql标准语法,不要使用一些数据库特有的语法、函数、类型等等数据库对象。1、命名规范 以下命名规范对表、视图、列、索引均进行限制。1.1 禁用拼音 命名标识符不允许使用拼音。1.2 长度限制 命名标识符长度不允许超过30个字符。数据库标识符长度限制1.3 保留字限制 命名标识符不允许原创 2022-03-14 13:34:55 · 893 阅读 · 0 评论 -
利用位操作来实现权限读写
0、背景我们要实现用一个字段要存储用户的CRUD权限,需要4个位,从高到低分别是:增、删、改、查1、授权权限-- 授权权限:增update users set authority = authority|8;-- 授权权限:删update users set authority = authority|4;-- 授权权限:改update users set authority = authority|2;-- 授权权限:查update users set原创 2021-04-18 09:57:27 · 228 阅读 · 0 评论 -
同步一张大表技术实现方案
目录1、背景2、技术方案3、技术方案修正3.1 记录上一页查询的最小的主键Id3.2 改写分页sql1、背景表中有一个主键字段,主键ID是有时间特性,按照时间升序增长的,可以认为ID是雪花算法生成的ID,目前表中有1亿条数据,我们需要把这1亿条数据同步到ES中。2、技术方案我们将全表数据看成是一个大的数据集,从逻辑上进行分页,每页每页的数据进行同步。这是一个比较粗糙的技术方案,真正执行过程中,会发现也存在深度分页问题,每页显示100条数据,第1页查询sql与执行计划,如原创 2021-01-20 16:50:42 · 1747 阅读 · 0 评论 -
表扩展字段2种实施方案研究
目录0、背景1、集中式表扩展字段方案优点:缺点:2、分散式表扩展字段方案2.1 多扩展字段优点:缺点:2.2 Json扩展字段优点:缺点:0、背景 当我们设计完成一张表时,随着业务变更、新功能需求的增加,经常需要增加一些字段,才能完成一些新功能,这个时候如果不加思索,直接增加字段,当然可以实现。但是我们是否认真思考过,表中所有的数据,是否只有极其一小部分数据,这个字段在值,而其它一些业务场景下,该字段是空的,表中每条数据都需要这个字段吗?请扪...原创 2021-01-19 16:15:16 · 3921 阅读 · 5 评论 -
记录一次对表中长字符串列的查询优化过程
目录1、问题的背景2、实施方案3、效果对比3.1 优化之前3.2 优化之后1、问题的背景 我们系统是一个互联网系统,注册用户非常多,有上百万数据,现在需要统一每个user_id注册来源的url地址,表结果如下:CREATE TABLE `sys_reg_url_stat_v1` ( `id` int(8) NOT NULL COMMENT '主键', `url` varchar(255) DEFAULT NULL COMMENT 'url', `reg_...原创 2020-12-24 09:45:41 · 1119 阅读 · 0 评论 -
MySql索引大总结
不应该创建索引的场景Where子句里用不到的字段表的记录非常少表中有大量重复数据,列选择性很低,例如性别字段(只能是男、女),索引的选择性越高,查询效率越好,使用索引就能过滤更多的行创建索引的原则场景select语句中频繁作为where查询条件的字段update/delete语句中作为数据选择的字段需要group by 、order by 出现的字段distinct所使用的字段字段的值有唯一性约束对于边表查询,联接字段应该创建索引,且类型应该保持一致,避免发生列的类型隐式转换,致索原创 2020-12-20 15:47:27 · 1917 阅读 · 1 评论 -
MySQL SQL性能分析(Optimizer Trace)
慕课网转载的资料: https://www.imooc.com/article/308721转载 2020-12-20 10:01:31 · 701 阅读 · 2 评论 -
PostgreSQL常用的客户端工具
目录1、Navicat for postgresql2、pgAdmin3、HeidiSQL4、JetBrain公司的DataGrip1、Navicat for postgresql2、pgAdmin3、HeidiSQL4、JetBrain公司的DataGrip原创 2021-01-13 14:40:20 · 1813 阅读 · 0 评论 -
MySQL SQL性能分析(Show Profile)
慕课网都是的资料:转载 2020-12-16 20:14:25 · 677 阅读 · 0 评论 -
记录一次mysql5.1.7的benchmark测试
记录一次mysql5.1.7的benchmark测试原创 2020-12-10 09:51:33 · 1227 阅读 · 0 评论 -
mysql数据库调优示例
数据库调优原创 2020-11-26 20:34:02 · 1199 阅读 · 0 评论 -
Mysql高可用架构
Mysql高可用架构原创 2020-11-26 17:25:36 · 52 阅读 · 0 评论 -
事务IsolationLevel&ACID&Propagation
1、数据库的ACID特性2、数据库事务隔离级别事务隔离级别 事务隔离级别/解决的问题 丢失修改 读脏数据 读未提交问题 不可重复读问题 幻读问题 读未提交 √ × × × × 读已提交 √ √ √ × × 可重复读 √ √ √ √ × 序列化 √ √ √ √ √ 3、数据库事务传播属性...原创 2020-11-25 21:56:56 · 1152 阅读 · 0 评论 -
MySql主从复制延迟问题如何解决?
1、主从复制延迟出现的原因?2、常用的解决方案2.1 客户端双读2.2 客户端强制走主库2.3 Galary Cluster2.4 MyCat故障切换功能 MyCat会监控从机的IO Running State、Sql Running State、Senonds_Behind_Master,设置一个阈值,如果超过阈值可以认为从库异常,该从库不会参与load balance。2.5 MySql主从复制修改为同步复制...原创 2020-11-25 21:40:05 · 1320 阅读 · 0 评论