How to enable the slow query log in MySQL?

Slow MySQL queries can significantly lower down the performance of your web application and eat up more server resources. MySQL server slow query log enables you to find those queries which take a long time to execute. Linux VPS and Dedicated server customers can edit my.cnf file to enable slow query log. This article will explain the steps to edit your my.cnf file and enable slow query log.

  1. Login to your server via SSH.

  2. To edit the MySQL settings with nano editor issue the following command. You can also use other editors like: Vi, Pico, Emacs etc.

    nano /etc/my.cnf
  3. To enable mysql slow query log, add following lines under [mysqld] section.

    long_query_time=3  |  This statement tells MySQL server to log any query that takes longer that 3 seconds.
    log_slow_queries=/var/log/mysql/log-slow-queries.log | This statement tells MySQL server where to log the slow queries.
    log_queries_not_using_indexes=YES | This is an optional statement that logs queries that don’t use an index.

    After adding above lines, enter Ctrl + O to save the changes and then Ctrl + X to exit.

  4. Create MySQL log directory and slow log file using following commands.

    mkdir /var/log/mysql
    touch /var/log/mysql/log-slow-queries.log
    chown mysql.mysql -R /var/log/mysql
  5. When you’ve made the changes to my.cnf file and created the log file you need to restart mysql server with following command.

    service mysqld restart

  • 0 Users Found This Useful

Was this answer helpful?

Related Articles

How to Repair a MySQL Database Through Linux and Windows Command Line?

This article describes how to repair MySQL database tables through Linux and Windows command...

How to Fix Error Forcing close of thread 310 user: 'root' in MySQL?

Problem Statement MySQL server keeps on shutting down. Error Message C:\Program...

How to edit the MySQL my.cnf file in Linux VPS?

Linux VPS and Dedicated server customers can edit MySQL configuration settings by modifying...

How to Backup and Restore MySQL Databases From Command Line?

mysqldump is an easy and quick tool to create backup of MySQL databases. It creates a dump file...

How to increase max_user_connections in Linux VPS?

More often you receive Too many connections error when you attempt to connect MySQL server. This...