1つのDBサーバーを使用して、複数のDBを管理している場合、
特定のDBへのみアクセス出来るユーザーを作成したい。
RDSにアクセス
アクセス権のあるEC2から下記を実行。
※ RDSへアクセス権があることを確認。セキュリティグループ等
$ mysql -h RDS_ENDPOINT -u root -p
Enter password: パスワードを入力
ユーザーの作成
ALL
で、全ての権限を付与。
DATABASE_NAME.*
で、データベース名を指定し、全てのテーブルを対象とする。
USERNAME@%
で、全てのホストを対象とする。
GRANT ALL ON DATABASE_NAME.* TO 'USERNAME'@'%' IDENTIFIED BY 'YOUR_PASSWORD';
※ USERNAME
が存在しない場合は、新規でユーザーを作成
閲覧専用ユーザー(Read Only)
全てのデータベース
GRANT SELECT ON *.* TO 'USERNAME'@'%' IDENTIFIED BY 'YOUR_PASSWORD';
特定のデータベース
DATABASE_NAME
に特定のデータベース名を指定
GRANT SELECT ON DATABASE_NAME.* TO 'USERNAME'@'%' IDENTIFIED BY 'YOUR_PASSWORD';