innodb_lock_monitor

Help
2008-09-25
2013-04-19
  • I have MySQL 5.0.67 on Windows system. I have downloaded InnoTop and Active Perl 5.8.8, than install it and all requied modules for Perl. Innotop works fine, but I want to turn on innodb_lock_monitor. When I push "a" in Lock mode Innotop ask me "command to send:", than I enter command CREATE TABLE innodb_lock_monitor(a INT) ENGINE=INNODB; and get error "Error from netcafe44: DBD::mysql::st execute failed: No database selected at innotop line 5288, <IN> line 14.". Than I tried to execute this command in MySQL Administrator, table innodb_lock_monitor was created, and I get output to "\MySQL Server 5.0\data\smsql.err" file. In this output there is a lot of information about locks, for example
    "mysql tables in use 1, locked 1
    LOCK WAIT 3 lock struct(s), heap size 320"
    but none of these lock were shown in Innotop. Also when I turn on innodb_lock_monitor, no locks were shown in Innotop at all.

    What I did wrong?

     
    • Baron Schwartz
      Baron Schwartz
      2008-09-28

      Your CREATE TABLE command lacked a database, e.g.

      CREATE TABLE mydb.innodb_lock_monitor(a int)engine=innodb;

      If you don't see any locks in innotop, perhaps there aren't any locks being held currently.  If you see locks in SHOW INNODB STATUS output but innotop doesn't show them in L mode, please submit a bug report including the SHOW INNODB STATUS output as an attachment.