I have run in to the issue where I wanted to change some configuration on our production MySQL server but did not want to restart MySQL since its in production. One of the parameters we like to change time to time is the “log_slow_queries” so we can see what queries are slow in production environment. But obviously we don’t want to restart mysql server so we start up mysql client and type:Â
mysql> set @@long_query_time=3;
Query OK, 0 rows affected (0.00 sec)mysql> show variables like 'long%';
+-----------------+-------+
| Variable_name | Value |
+-----------------+-------+
| long_query_time | 3 |
+-----------------+-------+
1 row in set (0.00 sec)
Once you are done checking for slow queries, you can reset it back to whatever value you want by repeating the command with higher number (default is 10).
mysql> set @@long_query_time=10;
Query OK, 0 rows affected (0.00 sec
mysql> show variables like 'long%';
+-----------------+-------+
| Variable_name | Value |
+-----------------+-------+
| long_query_time | 10 |
+-----------------+-------+
1 row in set (0.00 sec)
There are many more variables you can change. Type show variables
in the mysql client to see the list and what all those variables are set to.