What is actual difference between wait_timeout and interactive_timeout?
1 Answer
interactive_time is for interactive sessions, whereas wait_timeout is for non-interactive sessions.
What's an interactive session? It's one with a human at the keyboard.
When your code connects to MySQL, runs a query and then spends 3 seconds processing that query before disconnecting, that's 3 seconds of the wait_timeout.
When you use the mysql command line client to connect, run a command and spend 10 seconds reading the output, that's 10 seconds of interactive_timeout. If you walk away and have lunch, that's 3600 seconds of interactive_timeout.
In both cases, when you or your code runs another query, the waiting time is reset back to 0.
You can see the values for all the current sessions by typing show processlist. The values in the sleep(5) function is the number of seconds since that connection last did anything.
- thank you, this helped me a lot to understand the difference, very well explained.Fernando Gabrieli– Fernando Gabrieli2018-11-28 16:43:36 +00:00Commented Nov 28, 2018 at 16:43
- 3so let's say I have a query that takes 2 minutes to run, would MySQL disconnect my connections if wait_timeout is less than 2 minutes?Soheil Rahsaz– Soheil Rahsaz2020-12-14 07:12:52 +00:00Commented Dec 14, 2020 at 7:12