mysql使用乐观锁时,自带的悲观锁会失效么
这是两个不同的概念。
1.在表中增加version,是由你自己写的程序或者sql的where条件控制的,并没有真正的到达mysql的事务层。2.悲观锁是mysql自己维护的锁机制,你加不加version跟悲观锁没关系,而只跟你设置的事务级别有关系数据库面试常问的几个问题
1.事务四大特性( ACID )原子性、一致性、隔离性、持久性?
2.事务的并发?事务隔离级别,每个级别会引发什么问题, mysql 默认是哪个级别?
3.MySQL常见的三种存储引擎
( InnoDB 、 MyISAM 、 MEMORY )的区别?
4.MySQL的 MyISAM 与 InnoDB 两种存储引擎在,事务、锁级别,各自的适用场景?
5.查询语句不同元素( where 、 jion 、 limit 、 group by 、 having 等等)执行先后顺序?
6.什么是临时表,临时表什么时候删除?7. MySQL B + Tree 索引和 Hash 索引的区别?
8.聚集索引和非聚集索引区别?
9.有哪些锁(乐观锁悲观锁), select 时怎么加排它锁?
10.非关系型数据库和关系型数据库区
互联网公司对实习生的要求
具体要求如下:
1、操作系统。尤其是内存/线程/进程方面
2、计算机网络协议,重点关注 TCP/UDP/HTTP。
3、数据结构与算法。
4、数据库,知道mysql存储引擎中索引的实现机制、数据库事务的几种粒度、行锁,表锁;乐观锁,悲观锁等。
5、设计模式,熟悉常用的几种设计模式就行。
6、Java语言基础。熟悉java语言基础,了解JVM、内存模型,重点考察 面向对象、集合框架(继承关系,实现原理)、异常体系、IO体系、并发集合、多线程。熟悉多线程编程/并发/线程安全明显可以加分。
7、J2EE,熟悉Spring/Spring MVC , ORM 什么的吧。看过源码,了解原理之类的也明显可以加分。
8、Linux,熟悉基本的linux命令就行吧
9、如果有自己做过的实习项目会加分不少。
还没有评论,来说两句吧...