質問: 急ぎですのでピンポイント回答者様に1000pt差し上げます。 **SQL初心者なのでそれなりのレベルに合わせたご回答をお願いします。 WindowsServer2003でMySQL5を使用しています。 MySQLAdministratorで操作を間違え、rootユーザの削除をしてしまい、rootでの作業ができなくなりました。 その後、下記のサイトを参考にして、6.のrootに新しいパスを設定する所までは行いました。 が、ユーザの権限部分?だと思うのですが、information_schemaのUSER_PRIVILEGESが1行しかなく、root@localhostにPRIVILEGE_TYPEがUSAGEとして設定されているだけです。 。 とりあえずrootが再作成できればいいので、全ての権限をONで再作成するSQL文を教えてください。 一応バックアップサーバに同等のテーブルがありますが、これを転記/SQL構文の作成もよくわからないので、 「○○をinsertしてください。」ではなく具体的なSQL文を示していただければ幸いです。 (質問文が長すぎると蹴られてしまったので続きはコメントに記載します)
回答: 以下の手順を実行してください。 ご質問手順を行ったことがないので分かりませんが、権限が失われた状態の root ユーザーが存在していれば、手順の4,4-1はスキップできます。 #### 1.DOSプロンプトを開き、MySQL\bin ディレクトリに移動してください。 #### 2.MySQLサービスを停止してください。 net stop mysql #### 3.MySQLサービスを認証無効モードで起動してください。 net start mysql --skip-grant-tables #### 4.rootユーザーを作成してください。 mysql -u root #### これ以降は、MySQL プロンプトでの作業になります。 #### 4-1.MySQL DB を選択し、rootユーザーのパスワードを設定してください。 use mysql; update user set password=PASSWORD('パスワード') where user='root'; #### 4-2.rootユーザーの権限を設定してください。 update user set Select_priv='Y', Insert_priv='Y', Update_priv='Y', Delete_priv='Y', Create_priv='Y', Grant_priv='Y', Alter_priv='Y' where User='root'; #### 4-3.設定値を反映し、MySQLコマンドを終了します。 flush privileges. exit; これ以降は、再びDOSプロンプトでの作業になります。 #### 5.MySQLサービスを停止、再起動してください。 net stop mysql net start mysql