変数「general_log_file」を「/var/lib/msyql/ubuntu.log」の値に設定することはできません


10

mysqlのgeneral_log_file変数の値を別の値に変更しましたが、今、それを元の値に戻そうとしています/var/lib/mysql/ubuntu.log。しかし、私がするとき:

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

私はこのエラーを受け取ります:

エラー1231(42000):変数「general_log_file」を「/var/lib/msyql/ubuntu.log」の値に設定できません

どうしたの?

回答:


22

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

どうしたの?

簡単な答えは、このファイルが存在しないことです。

入力が速すぎます。ファイル名にタイプミスがあります/var/lib/mysql/ubuntu.log


1
フォルダーが存在する場合、mysqlユーザー(またはmysqldプロセスの所有者)がフォルダーに書き込むための適切な権限が必要な場合があります。
mwfearnley

2

これは非常に古い回答であることは知っていますが、万が一誰かがここで回答を探している場合に備えて。

私の場合-問題は、宛先フォルダで正しくない権限にありました。


2
あなたがどんなパーミッションを持っているか、そしてあなたがあなたが必要だとわかったものについてもっと正確にできるなら、私はあなたの答えを賛成します(そしてそれはそうではありませんでした777)。
MadHatter、2015

1
私はrootがそのディレクトリに書き込むことだけを許可されていました。これは、mysqlユーザーが書き込み権限を持っていなかったことを意味します。ここから-これを修正するいくつかのオプションがあります。(私がしたように)777権限を追加するか、mysqlユーザーが書き込むためのディレクトリを作成します。
タタ

777パーミッションは確かに非常に貧弱なアイデアです。
MadHatter、2015

1
私の場合-これは私がどこからでも書き込みたい「ジャンク」フォルダなので、まったく悪い考えではありませんでした。質問のように、ファイルを/var/lib/mysql/ubuntu.logに書き込むように設定していなかったため、最初に777のアイデアを追加しませんでした。フォルダーが存在する場合でも、そのことに注意してください。適切な権限があることを確認することをお勧めします。
タタ
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.