ユーザ作成GRANTコマンドで権限とパスワードを同時に設定する。 mysql> GRANT SELECT,INSERT,DELETE,UPDATE,CREATE,DROP,FILE,ALTER,INDEX ON *.* to
sample_user IDENTIFIED BY 'ABC123';
Query OK, 0 rows affected (0.00 sec)
自身のオプションを継承して、 admin というユーザを作成し、パスワード 'pass' を設定する。 mysql> GRANT ALL PRIVILEGES ON *.* TO admin@"192.168.0.% " IDENTIFIED BY 'pass' WITH GRANT OPTION;
"192.168.0.%" は、"192.168.0.*" からのログオンを許すという意味。同PC内であれば、"localhost" と書く。
"*.*" はアクセスできるテーブルを指す。"データベース名.テーブル名" の形式。
"WITH GRANT OPTION" は、GRANT構文の実行権限を付与する意味。
"ALL PRIVILEGES" は全ての実行権限という意味、selectのみだったら"SELECT" と書く。
変更事項の即時反映 mysql> FLUSH PRIVILEGES;
ユーザ一覧
ユーザ情報もデータとして保存されているのでSELECT文を使って問い合わせる。 mysql> SELECT user, host, password FROM MYSQL.USER;
+-------+-----------+-------------------------------------------+
| user | host | password |
+-------+-----------+-------------------------------------------+
| root | localhost | |
| root | 127.0.0.1 | |
| root | ::1 | |
| admin | localhost | |
+-------+-----------+-------------------------------------------+
4 rows in set (0.00 sec)
パスワードはハッシュ値なので紛失パスワードを知ることは出来ない。
ハッシュ値なので同じワードを使えば同じハッシュ値になる。 |