15

I changed the value of mysql's general_log_file variable to something else, and now I'm trying to change it back to what it was originally, /var/lib/mysql/ubuntu.log. But when I do:

SET GLOBAL general_log_file = '/var/lib/msyql/ubuntu.log';

I get this error:

ERROR 1231 (42000): Variable 'general_log_file' can't be set to the value of '/var/lib/msyql/ubuntu.log'

What's going on?

4 Answers4

28

ERROR 1231 (42000): Variable 'general_log_file' can't be set to the value of '/var/lib/msyql/ubuntu.log'

What's going on?

The simple answer is this file doesn't exist.

You type too fast. There is a typo in the file name, it should be /var/lib/mysql/ubuntu.log.

quanta
  • 52,423
4

I know this is a very old answer, but just in case someone else will be looking for an answer here.

In my case - the problem was in permissions that wasn't correct on the destination folder.

Tata
  • 149
  • 3
3

This is what helped me in a similar situation:

  1. Create a new folder somewhere on your machine, like so (of course, you can name the folder anything you want):

$ mkdir ~/log_files

  1. Change ownership of this folder to mysql:

$ chown mysql: ~/log_files

  1. Set the the variable general_log_file to the folder you just created in your mysql console, like so:

mysql> SET GLOBAL general_log_file = '~/log_files/mysql_log.log';

  1. Restart mysql (terminal command can be googled for your specific setup, e.g. by searching for "bitnami mysql restart")

  2. Check, if the log file exists in the folder you created in step 1

I hope it helps!

0

My issue was I was trying to create a log file on my local machine when I was running mysql in a Docker container. I was able to launch the CLI for docker and get into container and tail the log file there.

Dylan
  • 101