MySQL - can I limit the maximum time allowed for a query to run?

sa125 picture sa125 · Jan 25, 2011 · Viewed 37.9k times · Source

I'm looking for a way to limit the max running time of a query on mysql server. I figured this could be done through the my.cnf configuration file, but couldn't find anything relevant in the docs. Anyone knows if this could be done? thanks.

Answer

TehShrike picture TehShrike · Jan 25, 2011

There is no way to specify a maximum run time when sending a query to the server to run.

However, it is not uncommon to have a cron job that runs every second on your database server, connecting and doing something like this:

  1. SHOW PROCESSLIST
  2. Find all connections with a query time larger than your maximum desired time
  3. Run KILL [process id] for each of those processes