データベース - SQL 基本構文 - ロール(スキーマ・ユーザ)操作 - 作成


クラウディア 


1. 概要
2. ロール(ROLE)作成(postgreSQL)
3. ユーザ(USER)作成(MySQL)

1. 概要

 作成方法。

2. ロール(ROLE)作成(postgreSQL)

 「ROLE」(ロール)、「postgreSQL」での操作。  「postgres」ユーザで。

$ psql
psql (9.6.10)
Type "help" for help.

postgres=#
 「psql」上で。

CREATE ROLE ロール;
ALTER ROLE ロール WITH SUPERUSER INHERIT NOCREATEROLE CREATEDB LOGIN NOREPLICATION NOBYPASSRLS PASSWORD 'パスワード';
 「WITH」以降、「PASSWORD」に至るまでは、ロールに与える権限によって異なります。

3. ユーザ(USER)作成(MySQL)

 「USER」(ユーザ)、つまり、「MySQL」での操作。  「root」ユーザで、「mysql」上で。

CREATE USER ユーザ名;
Query OK, 0 rows affected (0.04 sec)
 一応、これで作成できるのですが・・・。  作成されたものを見ると。

SELECT HOST, USER FROM MYSQL.USER;
+-----------+---------------+
| HOST      | USER          |
+-----------+---------------+
| %         | ユーザ名      |
| localhost | root          |
+-----------+---------------+
5 rows in set (0.01 sec)
 「HOST」が「%」になっているのが気にかかるわけです。

CREATE USER ユーザ名@localhost;
Query OK, 0 rows affected (0.04 sec)

SELECT HOST, USER FROM MYSQL.USER;
+-----------+---------------+
| HOST      | USER          |
+-----------+---------------+
| localhost | ユーザ名      |
| localhost | root          |
+-----------+---------------+
5 rows in set (0.01 sec)
 てのが正しいようです。