V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX  ›  wenxueywx  ›  全部回复第 2 页 / 共 4 页
回复总数  65
1  2  3  4  
虚拟机与物理机磁盘是一样的?再看看 mysql 内存配置 redo log 、binlog 落盘策略
rr 等级的 readview 是事务开始时创建,事务在整个生命周期内使用相同的 readview 。我理解题主的意思是 A 、B 两个事务并行,A 事务已经提交的数据,B 事务是通过 readview 是读不到的。查询子表状态时采用当前读可以解决:select count(0) from a_detail WHERE auid = 'a1' and approval_status!=2 lock in share mode ;
其次,主表没有加锁的必要
17 天前
回复了 zcm3579 创建的主题 MySQL 请教 SQL 子查询的性能问题
“在 where 里写条件会影响 GROUP_CONCAT 的结果”
是什么意思?
23 天前
回复了 lasuar 创建的主题 MySQL 请教关于 mysql 临键锁工作模式的问题
查询走的全表扫描吧
你 explain 看看
23 天前
回复了 lasuar 创建的主题 MySQL 请教关于 mysql 临键锁工作模式的问题
SELECT * FROM students_nk_lock WHERE score >= 90 FOR UPDATE;
33 天前
回复了 Zaden 创建的主题 MySQL mysql 如何高效获取两条相邻推送时间间隔
加个字段 last_push_time 记录上一次推送时间,insert 时可以通过触发器查询上一次该 point_id 的 push_time 来更新
1 、select * from info where a = 1 and c = 200
multi 索引总长度为 15 字节,可以用到 multi 索引的 a 字段( 5 字节),不能用到 c 字段(不满足最左前缀匹配原则);
icp 开启的情况下,可以把 c=200 的条件下推到引擎层过滤,可以减少回表次数
2 、select * from info where a > 1 and b < 200
首先,即使使用索引+icp ,也是和场景 1 相同,只能使用 multi 中 a 字段的索引,b<200 作为条件下推。
实际上,根据索引中 a 字段的基数来判断,只有在使用索引能大量减少扫描的行时才会使用索引+下推;假设表中有 10W 行数据,a 字段的取值范围是 1-100 ,在数据分布均匀的情况下,a 字段的基数为 1000 ,当你使用 a>1 and b<200 时,使用 multi 索引查询基本是全索引扫描+icp ,然后回表;全索引扫描代价与全表扫描差别不大;而当你使用 a>95 and b<200 时,通过 multi 索引的 a 字段可以过滤 95%的行,代价肯定比全表低。
我也推荐#1 的方法
34 天前
回复了 zhangkui 创建的主题 问与答 今天 520,大家有收到女朋友的礼物吗?
usmile
生个娃 每个月两千免税额度,不比你考证来抵扣个税香吗
现在 mysql 使用的磁盘都说 ssd ,亿级数据,只要使用姿势正确完全没有问题
建议先优化原 db
前面也有老哥说了,不清楚你的数据结构,使用场景是这些确实不好推荐
monica
41 天前
回复了 ZekeChin 创建的主题 汽车 10w 以内 求推荐 老登代步车
朗逸 不如宝来
65 天前
回复了 bokey 创建的主题 职场话题 不考虑钱,你们最想做的事情是什么?
享受生活
69 天前
回复了 shrinco 创建的主题 买买买 给程序猿推荐一口锅吧
不粘锅,好甩
73 天前
回复了 richards64 创建的主题 职场话题 被挖角跳槽,求指导去不去
去 A 有什么好处?
1  2  3  4  
关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   959 人在线   最高记录 6679   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 43ms · UTC 19:19 · PVG 03:19 · LAX 12:19 · JFK 15:19
Developed with CodeLauncher
♥ Do have faith in what you're doing.