[XAMPP]MySQLで消してしまったrootユーザーを復活させる
ローカルホストのphpMyAdminで新しくデータベースを作ろうとしたら、「特権がありません」と出て作れなかった。
管理者権限を持っているユーザーでないとデータベースが作れないらしい。
しかし、どうも昔にrootユーザーを削除してしまったらしく、管理者権限でログインできない。
なんてことをしてしまったんだ。
ということで、新しくrootユーザーを復活させることになった。
普通は以下の方法で直る場合が多いみたい。
- [XAMPP Control Panel]から、[シェル]を開く。
- 以下のコマンドでリセットする。
1 2 3 | // カレントパスは c:\[path]\xampp # cd mysql # resetroot.bat |
でも、自分の場合はカラムの数が合わないとかいうエラーが出て直らなかった。
Column count doesn't match value count at row 1
今回直った方法は以下の通り。
- " xampp\mysql\bin\"に移動
- 「my.ini」を編集。"[mysqld]"の下に"skip-grant-tables"という文言を追加。
- MySQLを再起動。
- 以下のコマンドを叩く。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 | # mysql Welcome to the MariaDB monitor. Commands end with ; or \g. Your MariaDB connection id is 3 Server version: 10.1.13-MariaDB mariadb.org binary distribution Copyright (c) 2000, 2016, Oracle, MariaDB Corporation Ab and others. Type 'help;' or '\h' for help. Type '\c' to clear the current input statement. MariaDB [(none)]> show databases; +--------------------+ | Database | +--------------------+ | information_schema | | mysql | | performance_schema | | phpmyadmin | +--------------------+ 4 rows in set (0.00 sec) MariaDB [(none)]> use mysql Database changed MariaDB [mysql]> UPDATE mysql.user SET Password=PASSWORD('admin') WHERE User='root'; Query OK, 3 rows affected (0.00 sec) Rows matched: 3 Changed: 3 Warnings: 0 |
これでrootが復活しているので、後は普通にログインできる。
ユーザー名を「root」、パスワードを「admin」でいける。
最後に「my.ini」を元に戻すのを忘れないこと。
この記事へのコメントはこちら