La variable 'general_log_file' ne peut pas être définie sur la valeur de '/var/lib/msyql/ubuntu.log'

10

J'ai changé la valeur de la general_log_filevariable de mysql en quelque chose d'autre, et maintenant j'essaye de la ramener à ce qu'elle était à l'origine /var/lib/mysql/ubuntu.log,. Mais quand je fais:

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

Je reçois cette erreur:

ERREUR 1231 (42000): la variable 'general_log_file' ne peut pas être définie sur la valeur de '/var/lib/msyql/ubuntu.log'

Que se passe-t-il?

XåpplI'-I0llwlg'I -
la source

Réponses:

22

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

Que se passe-t-il?

La réponse est simple: ce fichier n'existe pas.

Vous tapez trop vite. Il y a une faute de frappe dans le nom du fichier, ça devrait l'être /var/lib/mysql/ubuntu.log.

quanta
la source
1
Si le dossier existe, il peut avoir besoin d'autorisations appropriées pour que l' mysqlutilisateur (ou le propriétaire du mysqldprocessus) puisse y écrire.
mwfearnley
2

Je sais que c'est une très vieille réponse, mais juste au cas où quelqu'un d'autre chercherait une réponse ici.

Dans mon cas - le problème était dans les autorisations qui n'étaient pas correctes sur le dossier de destination.

Tata
la source
2
Je voterais pour votre réponse si vous pouviez être plus précis sur les autorisations que vous aviez et sur ce dont vous aviez besoin (et ce n'était pas le cas 777).
MadHatter
1
J'avais la permission pour root uniquement d'écrire dans ce répertoire. ce qui signifie que l'utilisateur mysql n'avait pas la permission d'y écrire. À partir d'ici - vous avez plusieurs options pour résoudre ce problème. ajoutez 777 autorisations (comme je l'ai fait) ou créez un répertoire pour que l'utilisateur mysql puisse y écrire.
Tata
777les autorisations sont en effet une très mauvaise idée.
MadHatter
1
dans mon cas - ce n'était pas du tout une mauvaise idée, car c'est un dossier "indésirable" que je veux y écrire de n'importe où. Je ne configurais pas le fichier pour qu'il soit écrit dans /var/lib/mysql/ubuntu.log comme dans la question, c'est pourquoi je n'ai pas ajouté l'idée du 777 en premier lieu. juste en notant que même si le dossier existe - cela vaut la peine de vérifier qu'il dispose des autorisations correctes.
Tata