Mysql – Monitor locks over long period of time

innodbMySQL

I am having some issues with one of my tables in a production server.

I know there are many diffrent threads running on this table. I need to put some kind of monitoring tool to see how many locks are happening on this table, and which queries are causing this locks.

I am familiar of slow-query-log.

Are there any tools which can help me? I have seen monyog, are there any free tools maybe?

Also is the a way to know all the deadlocks that happened overtime, like `show engine innodb status' deadlocks, but over time.

Best Answer

I have found the solution.

There is a variable called innodb_print_all_deadlocks which logs all the deadlocks in to the error log.