数据库
h18756057535
这个作者很懒,什么都没留下…
展开
-
索引失效(使用索引注意点)
不等于like通配符索引列的计算、类型转换非最左匹配 或联合索引使用范围查询(> < )之后的列 特别注意只要有=的含义是可以使用索引范围之后全失效!之前印象有这么一句话 其实这句话不准确 只要有=的含义是可以使用索引有些偏的索引失效会因为mysql版本不同等原因不一定按照一些博客说的会失效 我们主要考虑b+树的结构然后当查找时哪种方式这个树查找不下去应该就会索引失效索引查找会考虑这个索引的过滤性 太差过滤性的索引没有意义...原创 2020-09-08 10:13:46 · 161 阅读 · 0 评论 -
数据库连接不可用(同理http连接一样)
使用druid连接池会有这个问题 CommunicationsException, druid version 1.1.10, jdbcUrl :jdbc:mysql: testWhileIdle true, idle millis 1553441, minIdle 0, poolingCount 1, timeBetweenEvictionRunsMillis 60000, lastValidIdleMillis 1553441, driver org.gjt.mm.mysql.Driver, exce原创 2020-07-27 11:15:41 · 2878 阅读 · 0 评论 -
lombok踩坑系列
同时使用lombok的@Data和@Builder注解时lombok默认只会生成全参构造器 这个时候使用mybatis等orm框架就是无法完成创建对象如果使用Mybatis无法映射到对象上面 最好打开这个对象的字节码文件看一眼看看这个类的具体情况 会不会是没有无参的构造方法...原创 2020-07-25 11:47:01 · 174 阅读 · 0 评论 -
数据库表设计的坑
直接使用text字段存储一段json存在的问题当这段json的长度超长的时候 你是存不下的 此时需要修改存储结构 就是一个很要命的问题 特别是还存在历史数据的问题 设计使用需要谨慎原创 2020-07-22 14:39:16 · 164 阅读 · 0 评论 -
大数据量查询优化(限制数量连表查询)
当大表之前的连表查询如果业务是可以限制数量的话我们的连表逻辑应该是获取限制数量的主表结果集再去连表查询出相关的数据而优化前这种是连表完成后再去完成 group by、ORDER BY、LIMIT当命中的数据量是百万级别的时候 我们可以看业务限制数据量来提高查询效率优化前 select url_id,SUM(page_views) page_views,SUM(unique_visitors) unique_visitors, SUM(bounce) bounce,SUM(t原创 2020-07-22 11:25:26 · 1926 阅读 · 0 评论 -
oracle迁移mysql命令行迁移数据库方案
从oracle 迁移到mysql 因为无法用数据库连接工具连接新的mysql只能用mysql命令行工具oracle导出使用sqldeveloper连接工具mysql使用navicat即可如果2个环境可以直接互相访问那么可以直接使用一些工具迁移有专门oracle导出数据到mysql的工具需要保证迁移对象mysql的字符集以及时区是utf和东八区(看情况)因为oracle和mysql的字...原创 2020-01-08 21:39:30 · 276 阅读 · 0 评论 -
千万数据更新
pt-online-schema-change数据库大表结构修改数据库数据出现问题先考虑sql解决问题因数据重复导致唯一索引失败 可用sql解决注意点数据量大小 太大批量更新查看表当前索引情况 唯一索引可以关闭唯一性检查、mysql表ddl操作会直接表上锁 大表可能卡死...原创 2019-11-27 21:49:43 · 389 阅读 · 0 评论