Skip to main content

To run a SQL command using Drush, use the following sql-query command

drush sql-query "COMMAND"

As an example, in the following I will remove all of the records in the Watchdog.

 

Delete from watchdog

To empty (clear) the watchdog table, which contains Drupal's log messages, using the above noted command. The command to delete all entries from the watchdog table is as follows:

drush sql-query "DELETE FROM watchdog"

This command executes a SQL DELETE operation on the watchdog table, effectively clearing all the log entries.

If you are using Drush 9 or later, the command syntax remains the same. Just ensure you are running the command within the context of your Drupal site directory, or you have otherwise specified the Drupal site context for Drush to operate on.

 

Additional Tips

Backup Before Deletion: It's a good practice to backup your database before running direct SQL delete commands, especially in a production environment. You can use Drush to create a backup

drush sql-dump > backupfilename.sql

 

Using Drush for Log Management

While Drush doesn't have a specific built-in command for clearing logs as of my last update, the sql-query command is a powerful tool for direct database manipulation, including clearing logs or performing other custom queries.

 

Caution

Always exercise caution when running SQL commands directly on your database, particularly with commands that modify or delete data, to avoid unintended data loss.

Related articles