REVOKEpriv_type
[(column_list
)] [,priv_type
[(column_list
)]] ... ON [object_type
] {tbl_name
| * | *.* |db_name
.*} FROMuser
[,user
] ... REVOKE ALL PRIVILEGES, GRANT OPTION FROMuser
[,user
] ...
REVOKE
ステートメントは、システム管理者が MySQL
アカウントから権限を削除する事を可能にします。REVOKE
を利用する為には、GRANT OPTION
権限を持ち、また自分が削除しようとしている権限を持っている必要があります。
各アカウントは、例えば、'jeffrey'@'localhost'
のように GRANT
ステートメントと同じフォーマットを利用して名づけられます。もしアカウント名のユーザ名部分だけを指定すると、ホスト名の
'%'
部分が利用されます。アカウント名の指定についての追加情報に関しては、項12.5.1.3. 「GRANT
構文」
を参照してください。
どのレベルにどの権限が存在するのか、許容
priv_type
値、そしてユーザとパスワードを指定する為の構文については、項12.5.1.3. 「GRANT
構文」
を参照してください。
もし供与テーブルが、大文字と小文字が混在するデータベースかテーブル名を含む権限行を保持し、lower_case_table_names
システム変数がゼロではない値に設定されたら、REVOKE
をこれらの権限を廃止する為に利用する事はできません。供与テーブルを直接コントロールする必要があるかも知れません。(GRANT
は lower_case_table_names
が設定された時にそのような行を作成しませんが、そのような行は変数を設定する前に作成されていた可能性があります。)
全ての権限を削除するには、名づけられた全てのユーザに対して、全てのグローバル、データベース、テーブル、そしてカラム レベルの権限をドロップする次の構文を利用してください。
REVOKE ALL PRIVILEGES, GRANT OPTION FROMuser
[,user
] ...
この REVOKE
構文を利用する為には、mysql
データベースにグローバル CREATE
USER
権限か UPDATE
権限を持つ必要があります。
REVOKE
は権限を削除しますが、user
テーブル
エントリのドロップはしません。それは
DELETE
か DROP USER
を利用して明示的に行う必要があります。(項12.5.1.2. 「DROP USER
構文」
を参照してください。)