interactive_time
é para sessões interativas, enquanto wait_timeout
é para sessões não interativas.
O que é uma sessão interativa? É um com um humano no teclado.
Quando o seu código se conecta ao MySQL, executa uma consulta e depois gasta 3 segundos processando essa consulta antes de desconectar, ou seja, 3 segundos do wait_timeout
.
Quando você usa o cliente de linha de comando mysql
para se conectar, execute um comando e gasta 10 segundos lendo a saída, ou seja, 10 segundos de interactive_timeout
. Se você for embora e almoçar, são 3600 segundos de interactive_timeout
.
Em ambos os casos, quando você ou seu código executam outra consulta, o tempo de espera é redefinido para 0.
Você pode ver os valores de todas as sessões atuais digitando show processlist
. Os valores na função sleep(5)
são o número de segundos desde que a conexão durou qualquer coisa.