Search code examples
mysqlunixat-job

Creating an "at" job from command line for a MYSQL query


From the command line, I want to create an at job to run a mysql query. As you can imagine searching on google or here stackoverflow for "at" is difficult.

This works fine and the query runs like it ought to:

mysql -e 'MY QUERY;'

but if I do this:

at 17:30 mysql -e 'MY QUERY;'

At 5:30 I get a mail that tells me "UPDATE: command not found" and the query doesn't run. I set up a .my.cnf file already. Is there something else I'm forgetting?


Solution

  • I believe you have a shell escape issue. The shell is likely eating the quotes. Try double quoting like so:

    at 17:30 mysql -e "\"MY QUERY;\""