同一时刻并发读取都不会有问题,但是如果同时有修改呢?同一时刻并发写入就不用说了吧。
在处理并发读或者写时,可以通过实现一个由两种类型的锁系统来解决问题。这两种类型的锁通常被称为共享锁(shared lock)和排他锁(exclusive lock),也叫读锁(read lock)和写锁(write lock)
读锁是共享的,或则说是互相不阻塞的。多用户可以同时读取同一个资源。写锁则是排他的,也就是说一个写锁会阻塞其他的写锁和读锁,这样才能保证同一时刻只有一个用户在执行写入,并防止其他用户读取写入的同一资源。
在实际的数据库系统中,每时每刻都在发生锁定。大多时候,MySQL锁的内部管理是透明的。