读锁是共享的,或者说是是互不干扰的。多个客户在同一时刻可以同时读取统一资源,而互不干扰
写锁是排他的,也就是说一个写锁会阻塞其他的写锁和读锁。确保在给定的时间里,只有一个用户能够执行写入,并防止其他用户读取正在写入的统一资源
表锁,会锁定整张表,一个用户对表进行(插入,删除,更新等)前,会获得写锁,阻塞其他用户对这个表的所有读写操作,在执行alter table之类的操作时,数据库会使用表锁,不会发生死锁
行级锁 可以最大程度的支持并发处理(同时会增大锁的开销),会发生死锁
事务,是一组原子性的sql查询,或者说是一个独立的工作单元。同时具备ACID的标准特征
原子性 atomicity
一个事务被视为一个不可分割的最小单元,整个事务中所有的操作要么全部提交成功,要么全部失败回滚,对于一个事务来说,不可能只执行一部分
一致性 consistency
数据库总是从一个一致性的状态转换到另一个一致性的状态。
隔离性 isolation
一个事务在最终提交以前,对其他的事务是不可见的。
持久性 durability
一旦事务提交,其所做的所有修改都会永久保存在数据库中。即使系统崩溃,修改数据也不会丢失。