2013年12月17日火曜日

MySQL ユーザー権限付与

MySQLで既に作成したユーザーに後から権限を付与する場合は以下のようにコマンドを入力します。


グローバルレベル:
GRANT 権限 ON *.* TO 'ユーザー名'@'localhost';
データベースレベル: GRANT 権限 ON db_name.* TO 'ユーザー名'@'localhost';
テーブルレベル: GRANT 権限 ON db_name.table_name TO 'ユーザー名'@'localhost';
カラムレベル: GRANT 権限 (カラム名1, カラム名2, ...) ON データベース名.テーブル名 TO 'ユーザー名'@'localhost’;

また、付与できる権限は以下の通りです。(こちらより引用)
権限レベル意味
ALL [PRIVILEGES]GDTGRANT OPTION 以外の全てのシンプルな権限を設定します。
ALTERGDTALTER TABLE の使用を可能にします。
ALTER ROUTINEGDストアド ルーチンの変更、ドロップを可能にします。
CREATEGDTCREATE TABLE の使用を可能にします。
CREATE ROUTINEGDストアド ルーチンの作成を可能にします。
CREATE TEMPORARY TABLESGDCREATE TEMPORARY TABLE の使用を可能にします。
CREATE USERGCREATE USER、DROP USER、RENAME USER、そして REVOKE ALL PRIVILEGES の使用を可能にします。
CREATE VIEWGDTCREATE VIEW の使用を可能にします。
DELETEGDTDELETE の使用を可能にします。
DROPGDTDROP TABLE の使用を可能にします。
EVENTGDイベントスケジューラがイベントを作成するのを可能にします。
EXECUTEGユーザがストアドルーチンを起動させるのを可能にします。
FILEGSELECT ... INTO OUTFILE と LOAD DATA INFILE の使用を可能にします。
INDEXGDTCREATE INDEX と DROP INDEX の使用を可能にします。
INSERTGDTCINSERTの使用を可能にします。
LOCK TABLESGDSELECT 権限を持つテーブル上の LOCK TABLES の使用を可能にします。
PROCESSGSHOW FULL PROCESSLIST の使用を可能にします。
REFERENCESGDTCインプリメントされていません。
RELOADGFLUSH の使用を可能にします。
REPLICATION CLIENTGユーザがスレーブとマスタの場所を問い合わせる事を可能にします。
REPLICATION SLAVEG複製スレーブが必要とします。 (マスタからバイナリ ログ イベントを読み込む為)
SELECTGDTCSELECT の使用を可能にします。
SHOW DATABASESGSHOW DATABASES は全てのデータベースを表示します。
SHOW VIEWGDSHOW CREATE VIEWの使用を可能にします。
SHUTDOWNGmysqladmin shutdown の使用を可能にします。
SUPERGCHANGE MASTER、KILL、PURGE MASTER LOGS、そして SET GLOBAL ステートメントの使用を可能にし、 the mysqladmin debug コマンドはmax_connections が達成していても接続を (一回) 許可します。
TRIGGERGDTユーザがトリガを作成、ドロップするのを可能にします。
UPDATEGDTCUPDATE の使用を可能にします。
USAGEG「権限が無い」 の同義語です。
GRANT OPTIONT権限を与えるのを可能にします。
権限の種類によって与える対象のレベルが決まっています。(G:グローバル、D:データベース、T:テーブル、C:カラムです)。


  • この記事をシェアする

  • このエントリーをはてなブックマークに追加
  • このブログの更新をチェックする

  • follow us in feedly