Mysql database locking issue

Tags:

The default table type for MySQL is MyISAM.

It has table level locking, which means during an UPDATE, nobody can access any other record of the same table.

BDB

uses Page level locking,

and during an UPDATE, nobody can access any other record residing in the same database page of that table, until the locking transaction issues a COMMIT.

 

InnoDB

However, uses Row level locking.

Row level locking ensures that during an UPDATE, nobody can access that particular row, until the locking transaction issues a COMMIT.

Any of the above table types will probably be fine for a web server, but in a LAN application can cause unecessary issues.