ユーザの作成・確認、権限の付与

この記事ではデータベースのユーザの作成方法を解説します。

 ユーザの作成方法

データベースのユーザはCREATE USER文を使用して作成することができます。

ユーザ作成する際は、作成を行うユーザにCREATE USER権限が付与されている必要があります。

ユーザを作成するとスキーマも自動で作成されます。

基本的なCREATE USER文は以下の通りです。

CREATE USER <ユーザ名> IDENTIFIED BY <パスワード>
   [DEFAULT TABLESPACE <表領域名>]
   [TEMPORARY TABLESPACE <一時表領域名>]
   [PROFILE <ユーザプロファイル名>];   


 CREATE USER文の説明

・DEFAULT TABLESPACE

作成したユーザがスキーマオブジェクトを作成する際のデフォルトの格納先となる表領域を指定します。

省略した場合はSYSTEM表領域がデフォルト表領域になります。

・TEMPORARY TABLESPACE

使用する一時表領域を指定します。

省略した場合はSYSTEM表領域がデフォルト表領域になります。

・PROFILE

ユーザが使用するプロファイルを指定できます。

省略した場合はDEFAULTプロファイルが設定されます。


 作成例

TESTユーザを作成してみます。

  SQL> CREATE USER test IDENTIFIED BY test
  2     DEFAULT TABLESPACE users
  3     TEMPORARY TABLESPACE temp
  4  ;
ユーザーが作成されました。


作成したユーザには権限が付与されていないため、CREATE SESSION権限を付与します。

grant CREATE SESSION to <ユーザ名>;


TESTユーザにCREATE SESSION権限を付与します。

SQL> grant CREATE SESSION to test;
権限付与が成功しました。


作成したユーザはdba_users表で確認できます。

select USERNAME,ACCOUNT_STATUS,DEFAULT_TABLESPACE,TEMPORARY_TABLESPACE,PROFILE 
from dba_users;

ユーザ一覧を検索し、TESTユーザが作成されていることを確認します。

SQL> select USERNAME,ACCOUNT_STATUS,DEFAULT_TABLESPACE,TEMPORARY_TABLESPACE,PROFILE
  2  from dba_users;

USERNAME ACCOUNT_STATUS DEFAULT_TABLESPACE TEMPORARY_TABLESPACE PROFILE
---------------------- -------------- ------------------ -------------------- -------
..........
TEST OPEN USERS TEMP DEFAULT