|
Measures reported by MySQLIndbLcTest
InnoDB implements standard row-level locking where there are two types of locks, shared ( S ) locks and exclusive ( X ) locks. A shared ( S ) lock permits the transaction that holds the lock to read a row in a table. An exclusive ( X ) lock permits the transaction that holds the lock to update or delete a row.
The locking activity of an InnoDB table in the database server must be monitored carefully because an application holding a specific lock for a long time could cause a number of other transactions relying on the same lock to fail. The MySQLIndbLcTest monitors the locking activity on the InnoDB tables in the database server instance.
This test monitors locking activity on a database server instance
Outputs of the test : One set of results for the MySQL server being monitored
The measures made by this test are as follows:
| Measurement |
Description |
Measurement Unit |
Interpretation |
| innodbLockWaits |
Indicates the number of times operations that are performed on InnoDB tables had to wait for a row lock. |
Number |
A high value of waits can have an adverse impact on application performance. Possible reasons for this behavior could be: inadequate number of locks
available in the database, unusually high locking behavior of applications accessing the database, improper database application design, etc.
|
| innodbLockCurrent |
Indicates the number of row locks that are currently held by operations on InnoDB tables. |
Number |
A high value may indicate one of the following:
- Too many transactions are happening
- Locked resources are not being released properly
- Locks are being held unnecessarily.
|
| d_innodbLockTime |
Indicates the total time spent in acquiring row locks for InnoDB tables. |
Seconds |
|
| AverageRowLockWaitTime |
Indicates the average time taken to acquire row locks for InnoDB tables. |
Seconds |
Ideally, the value of this measure should be low.
A high value may indicate one of the following:
- Locked resources are not being released properly
- Locks are being held unnecessarily.
|
| innodbLockMax |
Indicates the maximum time taken to acquire row locks for InnoDB tables. |
Seconds |
|
|