
mysql
文章平均质量分 53
spnier
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
mysql分页问题引发的思考
count(未加索引列):它会全表扫描获取所有数据,解析中未加索引列,然后判断是否为NULL,如果不是NULL,则行数+1。count(*) ≈ count(1) > count(id) > count(普通索引列) > count(未加索引列)count(普通索引列):它需要从所有行的数据中解析出普通索引列,然后判断是否为NULL,如果不是NULL,则行数+1。count(id):id代表主键,它需要从所有行的数据中解析出id字段,其中id肯定都不为NULL,行数加1。一个查总条数,一个查分页数据。原创 2022-12-08 15:06:22 · 701 阅读 · 1 评论 -
mysql:乐观锁vs悲观锁
mysql:乐观锁vs悲观锁 悲观锁:前提是,认为一定会有并发抢占资源,强行独占资源,在整个数据处理过程中,将数据处于锁定状态。 乐观锁:前提是,认为不一定发生并发抢占资源,只有在提交操作的时候检查是否违反数据完整性。只能防止脏读后数据的提交,不能解决脏读。 【@@乐观锁@@】 1.版本号||时间戳形式 update su_goods set nums = nums - 1,version = version + 1 WHERE version = #version# and id = #id# upd原创 2020-11-03 12:55:44 · 170 阅读 · 0 评论 -
为什么数据库中不建议使用用 Null
港真,Null 貌似在哪里都是个头疼的问题,比如 Java 里让人头疼的 NullPointerException,为了避免猝不及防的空指针异常,千百年来程序猿们不得不在代码里小心翼翼的各种 if 判断,麻烦而又臃肿,为此 java8 引入了 Optional 来避免这一问题。 下面咱们要聊的是 MySQL 里的 null,在大量的 MySQL 优化文章和书籍里都提到了字段尽可能用NOT NULL,而不是NULL,除非特殊情况。但却都只给结论不说明原因,犹如鸡汤不给勺子一样,让不少初学者对这个结论半信半疑转载 2020-08-18 18:24:10 · 1796 阅读 · 1 评论 -
mysql统计查询今天、昨天、本周、本月、上一月 、今年数据利器
--今天 select * from 表名 where to_days(时间字段名) = to_days(now()); --昨天 SELECT * FROM 表名 WHERE TO_DAYS( NOW( ) ) - TO_DAYS( 时间字段名) <= 1 --本周 SELECT * FROM 表名 WHERE YEARWEEK( date_format( 时间字段名,'%Y-%m-%d' ) ) = YEARWEEK( now() ) ; --本月 SELECT * FROM .原创 2020-06-23 22:32:16 · 1467 阅读 · 0 评论 -
mysql常见面试题
1. UNION ALL 与 UNION 的区别 UNION和UNION ALL关键字都是将两个结果集合并为一个。 UNION在进行表链接后会筛选掉重复的记录,所以在表链接后会对所产生的结果集进行排序运算,删除重复的记录再返回结果。 而UNION ALL只是简单的将两个结果合并后就返回。 由于UNION需要排序去重,所以 UNION ALL 的效率比 UNION...原创 2020-03-16 10:41:34 · 104 阅读 · 0 评论 -
数据库分库分表及优化笔记
垂直分库分表引起的问题: 1.跨库的关联查询 join 解决方案 1)冗余字段 2)数据同步 例如商户系统、产品表 http---- ETL MQ 3)全局表(广播表) 字典表,基础表 行号名号表 10W+ 4)绑定表(ER表) 5)数据组装 /*catlet data = data1 + data2 2.分布式事务 1)两阶段提交 XA...原创 2020-03-13 22:12:59 · 168 阅读 · 0 评论 -
mysql数据同步到es
增量同步使用canal工具 https://www.cnblogs.com/jpfss/p/10832938.html https://blog.csdn.net/laoyang360/article/details/88600799 https://blog.csdn.net/qq_35556233/article/details/96989002 https://www.ucloud....原创 2020-03-30 09:30:54 · 284 阅读 · 0 评论 -
mysql性能调优步骤及常用命令
查看sql执行频率 SHOW STATUS LIKE 'Com_______'; -- 查询当前sql的执行频率 SHOW GLOBAL STATUS LIKE 'Com_______'; -- 查询mysql开启后sql的执行频率 SHOW GLOBAL STATUS LIKE 'Innodb_rows_%'; --查询innodb的sql影响数据的行数 开启慢查询日志,日志分析,定...原创 2020-03-06 11:16:26 · 126 阅读 · 0 评论