ユーザーが存在し、blahblah
の場合、次の2行が失敗するようにします。 今のところ重要ではありません:
create user 'root'@'localhost' identified by 'blahblah';
create user 'root'@'127.0.0.1' identified by 'blahblah';
助成金を出します:
grant all on *.* to 'root'@'localhost';
grant all on *.* to 'root'@'127.0.0.1';
パスワードを覚えやすいものに変更します:
set password for 'root'@'localhost' = password('NewPassword');
set password for 'root'@'127.0.0.1' = password('NewPassword');
ルートユーザーの数を確認してください。実際のユーザーは、ユーザーとホストの組み合わせです。パスワードはハッシュ化されて表示されます:
select user,host,password from mysql.user where user='root';
または
select user,host,authentication_string from mysql.user where user='root';
上記の2つ目は、MySQL5.7用です
上記の2人以上のユーザーがいる場合は、次のような他のユーザーを削除します。
drop user 'root'@'%'; -- this is the wildcard hostname, can be a security risk
drop user 'root'@'::1';
まだ2つしかありませんか?そうだといい。上記の選択したstmtsを使用して確認してください。
rootを使用してユーザーアプリを接続しないでください。ルートはメンテナンス専用です。 サーバー側のコードであるか、管理者が実行しているのかは関係ありません。保護されていないコードや有害なステートメントが挿入されていないコードは、rootとして実行されます。 それが理由です。