0

権限を付与する機能を含め、MySQL root ユーザーから権限のほとんどを誤って削除してしまいました。このユーザーを元の状態に戻す方法はありますか?

4

1 に答える 1

1

データベース内のUPDATEテーブルでまだ実行できる場合があります。usermysql

USE mysql;
UPDATE user SET Grant_priv='1' WHERE User='root';
FLUSH PRIVILEGES;

ステップ 3 が機能しない場合は、MySQL サーバーを再起動しても同じ結果になります。ステップ 2 が機能しない場合はmysql.user、バックアップから復元する必要があります。バックアップがない場合は、バックアップを作成し、MySQL を再インストールしてから、バックアップを選択的に復元し、mysqlデータベース内のテーブルを除外します。

アップデート

最初のステップで Access Denied が表示されます。この時点で、バックアップを使用した代替ソリューションに行き着きました。これらのテーブルを他の方法で回復する方法はありません (私が知っているか、簡単に想像できます)。

更新 2

grant正確なエラー メッセージは基本的に、root の権限を失うことに加えて、 mysqlDB への root のアクセスを削除したことを示しています。その DB にアクセスできず、grant特権も持たない場合、DB の新しいコピーをどうにかして取得するしか、元に戻すことができない唯一の方法ですmysql

レプリケーション スレーブを設定している可能性はありますか?

于 2009-11-01T20:46:20.353 に答える