CREATE USER によるユーザーの作成

ユーザーの作成は、CREATE USER という DDL (Data Definition Language) にて行なう。
ユーザーを作成することでスキーマも作成される。

基本的な CREATE USER の構文

説明のパート毎にリンクになっています。

CREATE USER my_name
   IDENTIFIED BY "my_password"
   [DEFAULT TABLESPACE my_tablespace]
   [TEMPORARY TABLESPACE my_temp_tablespace]
   [PROFILE my_profile]

 

CREATE USER 文 の説明

CREATE USER 〜 で指定したユーザー名 (my_name) でユーザーを作成する。

IDENTIFIED BY

ログインに使用するパスワードを設定する。Oracle 11g からパスワードの大文字小文字を区別するようになったので要注意。

DEFAULT TABLESPACE

このユーザーが CREATE TABLE や CREATE INDEX など、スキーマ・オブジェクト を作成するときのデフォルトの格納先(デフォルトの 表領域)を指定する。
省略可能であるが、省略すると SYSTEM 表領域 がデフォルトになる (※)
初めて DBCA でデータベースを作成した場合には USERS を指定しておく。

(※) システム表領域は Oracle が使用する表領域であり、かつ、ごみ箱機能が無効になっているので USERS 表領域などを使用することを強くお勧めする。

TEMPORARY TABLESPACE

Oracle が使用する作業用の表領域を指定する。メモリ内で収まらないソート、索引の作成や表の結合処理などの一時ワークエリアとして使用される。
省略可能であるが SYSTEM 表領域 がデフォルトになる。DEFAULT TABLESPACE 同様、省略しない方が良い。
初めて DBCA でデータベースを作成した場合には TEMP を指定しておく。

PROFILE

ユーザーが使用する プロファイル を指定する。
省略時には、事前定義済の DEFAULT プロファイルが設定される。

CREATE USER 使用例

SQLPlus にて my_nameというユーザを作成する。

SQL> conn / as sysdba
接続されました。
 
SQL> CREATE USER rivus
  2  IDENTIFIED BY "RIVUS_PASS"
  3  DEFAULT TABLESPACE users
  4  TEMPORARY TABLESPACE temp
  5  /
 
ユーザーが作成されました。

SYSDBA

好き勝手に動かしてもよいテスト環境であれば、DBA ロールの付与と表領域の使用量を無制限にしておくと良い。

SQL> GRANT DBA TO RIVUS ;
 
権限付与が成功しました。
 
SQL> GRANT UNLIMITED TABLESPACE TO RIVUS ;
 
権限付与が成功しました。

DBA ロール

 


ユーザー関連事項

日本オラクル
■ 日本オラクル 株式会社
■ オラクルマスター資格 (オラクルマスターとは
■ Oracle のライセンスがわからない…
Oracle Direct (ネットで聞いても最後はここで要確認)