随笔分类 -  MySQL

1
Mysql etc..
摘要:问题 bigint类型字段作为做为主键索引,一颗深度为3的B+树能存放多少个索引数据 分析 1.MySQL数据组织的最小单位是页,也叫数据页,每个数据页大小是16KB,索引也是存放在索引的数据页中 2.主键索引是聚簇索引,结合B+树的数据结构,主键索引在非叶子节点上不存储数据,仅在叶子节点上才存储完 阅读全文
posted @ 2022-04-18 19:56 听风是雨 阅读(913) 评论(0) 推荐(0) 编辑
摘要:EXPLAIN执行计划分类 案例表结构: 索引结构: 1.all 全表扫描 MYSQL扫描全表来找到匹配的行 例如: EXPLAIN SELECT * FROM `t_user` WHERE nick_name='鹅鹅鹅' 例如 EXPLAIN SELECT nn_number FROM `t_us 阅读全文
posted @ 2021-08-14 16:58 听风是雨 阅读(1220) 评论(0) 推荐(0) 编辑
摘要:1.查看所有库的大小 select concat(round(sum(DATA_LENGTH/1024/1024),2),'MB') as ALL_DB_DATA_SIZE, concat(round(sum(INDEX_LENGTH/1024/1024),2),'MB') as ALL_DB_IN 阅读全文
posted @ 2021-06-05 10:51 听风是雨 阅读(2277) 评论(0) 推荐(0) 编辑
摘要:需求背景: 由于业务需求,需要在线上用户表添加渠道字段,用于区分不同渠道注册的用户,目前该表有20+个字段,8个索引 线上用户数据大概1500W左右,需要不停机增加数据库字段,同时需要刷新Redis缓存中的用户数据 发生的问题: 问题1.添加字段可能会锁表,影响线上业务的操作; 问题2.删除Redi 阅读全文
posted @ 2021-03-06 00:05 听风是雨 阅读(2387) 评论(0) 推荐(0) 编辑
摘要://TODO 阅读全文
posted @ 2020-11-21 09:14 听风是雨 阅读(379) 评论(0) 推荐(0) 编辑
摘要:举个例子吧:order by id desc,time desc先是按 id 降序排列 (优先)如果 id 字段 有些是一样的话 再按time 降序排列 (前提是满足id降序排列) order by name, age desc name优先 name一样的话 就按age 排序 后面再加第三列的话, 阅读全文
posted @ 2020-11-17 17:56 听风是雨 阅读(620) 评论(0) 推荐(0) 编辑
摘要:分片键 分片算法 分片策略 SQL Hint 分片键 用于分片的数据库字段,是将数据库(表)水平拆分的关键字段。例:将订单表中的订单主键的尾数取模分片,则订单主键为分片字段。 SQL中如果无分片字段,将执行全路由,性能较差。 除了对单分片字段的支持,ShardingSphere也支持根据多个字段进行 阅读全文
posted @ 2020-09-26 10:07 听风是雨 阅读(624) 评论(0) 推荐(0) 编辑
摘要:逻辑表 水平拆分的数据库(表)的相同逻辑和数据结构表的总称。 例:订单数据根据主键尾数拆分为10张表,分别是t_order_0到t_order_9,他们的逻辑表名为t_order。 真实表 在分片的数据库中真实存在的物理表。即上个示例中的t_order_0到t_order_9。 数据节点 数据分片的 阅读全文
posted @ 2020-09-26 10:05 听风是雨 阅读(774) 评论(0) 推荐(0) 编辑
摘要:参考官方文档:http://shardingsphere.apache.org/ ShardingSphere是一套开源的分布式数据库中间件解决方案组成的生态圈,它由Sharding-JDBC、Sharding-Proxy和Sharding-Sidecar(计划中)这3款相互独立的产品组成。 他们均 阅读全文
posted @ 2020-09-26 00:11 听风是雨 阅读(1001) 评论(0) 推荐(0) 编辑
摘要:一.什么是Flyway? Flayway是一款数据库版本控制管理工具,支持数据库版本自动升级,Migrations可以写成sql脚本,也可以写在java代码里;不仅支持Command Line和java api ,也支持Build构建工具和Spring boot,也可以在分布式环境下能够安全可靠安全 阅读全文
posted @ 2020-07-26 23:01 听风是雨 阅读(2429) 评论(1) 推荐(1) 编辑
摘要:1. 存在几个线程: 主库一个线程,从库两个线程 2.主库生成一个log dump线程,和从库IO线程交互 3.IO线程请求主库binlog,写入到中继日志relay log 4.SQL线程读取中继日志,解析然后写入到从库 阅读全文
posted @ 2020-04-03 01:52 听风是雨 阅读(168) 评论(0) 推荐(0) 编辑
摘要:redo 重做日志 作用:确保事务的持久性,防止在发生故障,脏页未写入磁盘。重启数据库会进行redo log执行重做,到达事务一致性 undo 回滚日志 作用:保证数据的原子性,记录事务发生之前的数据的一个版本,用于回滚。 innodb事务的可重复读和读取已提交 隔离级别就是通过mvcc+undo实 阅读全文
posted @ 2020-04-03 01:37 听风是雨 阅读(263) 评论(0) 推荐(0) 编辑
摘要:转自:https://blog.csdn.net/kk185800961/article/details/79378313/ 以下考虑主要为 Innodb 引擎 【 innodb_buffer_pool_size 】 用于缓存 索引 和 数据的内存大小, 这个当然是越多越好, 数据读写在内存中非常快 阅读全文
posted @ 2020-04-03 01:18 听风是雨 阅读(493) 评论(0) 推荐(0) 编辑
摘要:MRR,全称「Multi-Range Read Optimization」。 简单说:MRR 通过把「随机磁盘读」,转化为「顺序磁盘读」,从而提高了索引查询的性能。 至于: 为什么要把随机读转化为顺序读? 怎么转化的? 为什么顺序读就能提升读取性能? 咱们开始吧。 磁盘:苦逼的底层劳动人民 执行一个 阅读全文
posted @ 2020-04-03 01:06 听风是雨 阅读(1000) 评论(1) 推荐(1) 编辑
摘要:1.date_sub() 时间的加减 备注:record 为datetime类型 select record_time as date, order_area as orderArea, order_cnt as orderCnt from dm_rpt_dss_enterprise_sum whe 阅读全文
posted @ 2020-03-05 10:27 听风是雨 阅读(378) 评论(0) 推荐(0) 编辑
摘要:百万数据量SQL,在进行分页查询时会出现性能问题,例如我们使用PageHelper时,由于分页查询时,PageHelper会拦截查询的语句会进行两个步骤 1.添加 select count(*)from (原查询sql) ,用于统计查询的总数 2.拼接 limit startPage,number 阅读全文
posted @ 2020-01-29 16:17 听风是雨 阅读(1655) 评论(0) 推荐(1) 编辑
摘要:一.JDBC驱动的版本号以及名称问题 区别: com.mysql.jdbc.Driver 是 mysql-connector-java 5中的 com.mysql.cj.jdbc.Driver 是 mysql-connector-java 6以上的版本中的 注意,我这里使用的是springboot2 阅读全文
posted @ 2019-11-19 11:31 听风是雨 阅读(21826) 评论(0) 推荐(2) 编辑
摘要:作者:李平 https://www.cnblogs.com/leefreeman/p/8315844.html 一个问题? InnoDB一棵B+树可以存放多少行数据?这个问题的简单回答是:约2千万 为什么是这么多呢? 因为这是可以算出来的,要搞清楚这个问题,我们先从InnoDB索引数据结构、数据组织 阅读全文
posted @ 2019-11-16 17:29 听风是雨 阅读(1295) 评论(0) 推荐(0) 编辑

1
/* 看板娘 */
点击右上角即可分享
微信分享提示