権限に関するトラブルシューティング

インポート用SQLファイルを指定してデータを流し込もうとしたらエラーが発生。
ログインユーザに十分な権限が与えられていなかったことが原因。

rootでcreate database

CREATE DATABASE db_hchuno;

データベースを選択

USE db_hchuno;

使いたいユーザに対してgrant

GRANT ALL ON db_hchuno.* TO mychuno@'%';

※「grant all on db_hchuno to mychuno@127.0.0.1;」
としていたため、変な権限の付き方をしていた。

mysql> show grants for mychuno@127.0.0.1;

                                                                                                                                                                                    • +
Grants for mychuno@127.0.0.1
                                                                                                                                                                                    • +
GRANT USAGE ON *.* TO 'mychuno'@'127.0.0.1' IDENTIFIED BY PASSWORD 'hogehoge'
GRANT ALL PRIVILEGES ON `db_hchuno`.`db_hchuno` TO 'mychuno'@'127.0.0.1'
                                                                                                                                                                                    • +

権限を消したい時には

revoke all on db_hchuno.* from mychuno@'%'

この後、FLUSH PRIVILEGES構文を必ず実行する

FLUSH PRIVILEGES;