innodb是行锁还是表锁

InnoDB行锁是通过给索引上的索引项加锁来实现的,这一点MySQL与Oracle不同,后者是通过在数据块中对相应数据行加锁来实现的。

nnoDB这种行锁实现特点意味着:只有通过索引条件检索数据,InnoDB才使用行级锁,否则,InnoDB将使用表锁!

在实际应用中,要特别注意InnoDB行锁的这一特性,不然的话,可能导致大量的锁冲突,从而影响并发性能。

行级锁都是基于索引的,如果一条SQL语句用不到索引是不会使用行级锁的,会使用表级锁。行级锁的缺点是:由于需要请求大量的锁资源,所以速度慢,内存消耗大。

mysql双主键时,索引是什么?mysql联合主键时,索引是什么?两个问题是一样的。

联合主键时,第一个主键,为表的索引,第二个主键不作为索引,如果要频繁查询,需要另外建立索引。(参考:https://blog.csdn.net/shang1989/article/details/86070468

原文地址:https://www.cnblogs.com/workharder/p/12810647.html