page contents
Pack
Pack

性别: 注册于 2019-11-22

向TA求助
9899金币数
19670 经验值
4个粉丝
主页被访问 6604 次

1048 个回答

0 赞同

谈谈数据库的乐观锁和悲观锁?

悲观锁: 悲观锁她专一且缺乏安全感了,她的心只属于当前事务,每时每刻都担心着它心爱的数据可能被别的事务修改,所以一个事务拥有(获得)悲观锁后,其他任何事务都不能对数据进行修改啦,只能等待锁被释放才可以执行。 乐观锁: 乐观锁的“乐观情绪”体现在,它认为数据的变动不会太频繁。因此,它允许多个事务同时对...

回答于 2021-06-21 16:14

0 赞同

在高并发情况下,如何做到安全的修改同一行数据?

要安全的修改同一行数据,就要保证一个线程在修改时其它线程无法更新这行记录。一般有悲观锁和乐观锁两种方案~ 使用悲观锁 悲观锁思想就是,当前线程要进来修改数据时,别的线程都得拒之门外~ 比如,可以使用select…for update ~ select *  from User where  name =‘ jay ’ for  update 以上这条sql语句会锁...

回答于 2021-06-19 13:40

0 赞同

什么是幻读,脏读,不可重复读呢?

事务A、B交替执行,事务A被事务B干扰到了,因为事务A读取到事务B未提交的数据,这就是脏读 在一个事务范围内,两个相同的查询,读取同一条记录,却返回了不同的数据,这就是不可重复读。 事务A查询一个范围的结果集,另一个并发事务B往这个范围中插入/删除了数据,并静悄悄地提交,然后事务A再次查询相同的范围,两次读取...

回答于 2021-06-19 13:37

0 赞同

如何选择合适的分布式主键方案呢?

数据库自增长序列或字段。 UUID。 Redis生成ID Twitter的snowflake算法 利用zookeeper生成唯一ID MongoDB的ObjectId

回答于 2021-06-19 13:36

0 赞同

limit 1000000加载很慢的话,你是怎么解决的呢?

方案一:如果id是连续的,可以这样,返回上次查询的最大记录(偏移量),再往下limit select  id , name  from  employee  where  id > 1000000  limit  10. 方案二:在业务允许的情况下限制页数: 建议跟业务讨论,有没有必要查这么后的分页啦。因为绝大多数用户都不会往后翻太多页。 方案三:order...

回答于 2021-06-19 13:35

0 赞同

聚集索引与非聚集索引的区别

一个表中只能拥有一个聚集索引,而非聚集索引一个表可以存在多个。 聚集索引,索引中键值的逻辑顺序决定了表中相应行的物理顺序;非聚集索引,索引中索引的逻辑顺序与磁盘上行的物理存储顺序不同。 索引是通过二叉树的数据结构来描述的,我们可以这么理解聚簇索引:索引的叶节点就是数据节点。而非聚簇索引的叶节点仍然是...

回答于 2021-06-19 11:59

0 赞同

数据库索引的原理,为什么要用B+树,为什么不用二叉树?

可以从几个维度去看这个问题,查询是否够快,效率是否稳定,存储数据多少,以及查找磁盘次数,为什么不是二叉树,为什么不是平衡二叉树,为什么不是B树,而偏偏是B+树呢? 为什么不是一般二叉树? 如果二叉树特殊化为一个链表,相当于全表扫描。平衡二叉树相比于二叉查找树来说,查找效率更稳定,总体的查找速度也更快。...

回答于 2021-06-19 11:58

0 赞同

InnoDB与MyISAM的区别

InnoDB支持事务,MyISAM不支持事务 InnoDB支持外键,MyISAM不支持外键 InnoDB 支持 MVCC(多版本并发控制),MyISAM 不支持 select count(*) from table时,MyISAM更快,因为它有一个变量保存了整个表的总行数,可以直接读取,InnoDB就需要全表扫描。 Innodb不支持全文索引,而MyISAM支持全文索引(5.7以后的InnoDB也支持...

回答于 2021-06-19 11:57

0 赞同

说说分库与分表的设计

分库分表方案,分库分表中间件,分库分表可能遇到的问题 分库分表方案: 水平分库:以字段为依据,按照一定策略(hash、range等),将一个库中的数据拆分到多个库中。水平分表:以字段为依据,按照一定策略(hash、range等),将一个表中的数据拆分到多个表中。垂直分库:以表为依据,按照业务归属不同,将不同的表拆分到...

回答于 2021-06-19 11:56

0 赞同

日常工作中你是怎么优化SQL的?

加索引 避免返回不必要的数据 适当分批量进行 优化sql结构 分库分表 读写分离

回答于 2021-06-19 11:55