これは、匿名アカウントなのか
mysqlで
mysql -u -p
と接続すればuserは、
MariaDB [(none)]> select user();
+--------------+
| user() |
+--------------+
| -p@localhost |
+--------------+
1 row in set (0.00 sec)
となりますし、
mysql
と接続すればuserは、
MariaDB [(none)]> select user();
+----------------+
| user() |
+----------------+
| ***(※microsoftのアカウント名)@localhost |
+----------------+
1 row in set (0.00 sec)
となります。
またこれらのようなアカウントに見覚えがないので、-p@localhost(current_user()
を実行するとなぜか「@localhost」となる)の状態でmysql.userを見ようとすると
MariaDB [(none)]> select user,host,password from mysql.user;
ERROR 1142 (42000): SELECT command denied to user ''@'localhost' for table
'user'
MariaDB [(none)]> exit;
Bye
テーブル上にそんなユーザーは存在しない,というエラーがでてしまいます。***(※microsoftのアカウント名)@localhostでも同じです。
rootでやるとエラーが出ずに正常です。
MariaDB [(none)]> select user,host,password from mysql.user;
+------+-----------+-------------------------------------------+
| user | host | password |
+------+-----------+-------------------------------------------+
| root | localhost | ***************************************** |
| root | 127.0.0.1 | ********** |
| root | ::1 | ********** |
| | localhost | |
| pma | localhost | |
+------+-----------+-------------------------------------------+
5 rows in set (0.00 sec)
いづれもcurrent_userすると「@localhost」となるので恐らく匿名アカウントだと思いますがあっておりますか。
恐らくuserが空っぽのやつに接続しているのだと思いますが、これさえ削除すればこのようなでたらめな接続は、できなくなりますか。