MySQL root ユーザーの権限を復元するにはどうすればよいですか?

StackOverflow https://stackoverflow.com/questions/1658246

  •  11-09-2019
  •  | 
  •  

質問

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

役に立ちましたか?

解決

まだできるかもしれません UPDATE テーブルの上に user データベース内 mysql:

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

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

アップデート

最初のステップで「アクセスが拒否されました」というメッセージが表示されます。この時点で、バックアップを使用した代替ソリューションが必要になります。他の方法でこれらのテーブルを回復する方法はありません(私が知っている、または簡単に想像できます)。

更新 2

正確なエラー メッセージは、基本的に、root の喪失に加えて、次のことを示しています。 grant 権限を削除すると、root のアクセス権が削除されます。 mysql DB。その DB にアクセスしたり、 grant 特権を持っているため、過去に戻る唯一の方法は、何らかの方法で新しいコピーを入手することです。 mysql DB。

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

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top