やりたかったこと
RDSのMySQLで、全DBへの権限を付与したユーザの作成
最終的に成功したSQL
grant all on `%`.* to '{ユーザ名}'@'%' identified by '{パスワード}';
苦労話
恐らく、通常のMySQLであれば以下のSQLで全DBへの権限を付与したユーザ作成になるはず
grant all on *.* to '{ユーザ名}'@'%' identified by '{パスワード}';
しかし、RDSのMySQLに対しては、rootユーザで上記のSQLを実行しても以下のエラーメッセージが出てしまう
Access denied for user 'root'@'%' (using password: YES)
ググって色々やり方変えて試しても上手く行きませんでしたが、最終的には以下の記事にたどり着きました。
参考URL
https://www.flydata.com/blog/access-denied-issue-amazon-rds/
http://www.fidian.com/problems-only-tyler-has/using-grant-all-with-amazons-mysql-rds
しかし、参考URLの1つ目のリンク先にある、
GRANT ALL ON '%'.* TO 'admin_sync'@'%';
上記のSQLを参考にしてもシンタックスエラーが出てしまいます。
'%'.*ではなく`%`.*でないとだめみたいです。