5.9.5 OracleDBユーザーの追加(Windows)
機能
WindowsのOracleDBサーバに新たなDBユーザーを追加します。
プロパティ「実行対象サーバのホスト名」(plugin.destinationHost)に指定したOracleDBサーバ(以降,「DBサーバ」と呼ぶ)上で,SQL*Plusを起動し,"CREATE USER"文を実行します。
プロパティ「DB権限」(database.dbPrivilege)には,SQL*Plusで"GRANT"文を記述する場合と同様にシステム権限やオブジェクト権限やロールの名称をコンマ区切りで指定できます。DB権限を指定した場合は,"CREATE USER"文に続けて"GRANT"文を実行します。"GRANT"文に"WITH HIERARCY OPTION"や"WITH GRANT OPTION"は指定しません。
DB権限に何も指定しなかった場合は,権限の全く無いDBユーザーを追加します。
このドキュメント内で使用しているOracleに関する用語を次に示します。
・OracleDBインスタンス
DBサーバにインストールされているDBのインスタンスです。
同一のDBサーバ上に複数のインスタンスが存在することができ,各々のインスタンスはDBサーバ内でユニークな識別名(後述の「Oracleシステム識別子(SID)」)と固有のインストール先フォルダを持っています。
また,インスタンスはDBのテーブル領域やDBユーザーのアカウント情報や権限設定情報らを束ねる存在でもあります。
・SQL*Plus
OracleDBに同梱されているユーティリティツールです。
コマンドラインインタフェイス(CLI)でOracleDBを操作・保守する為の独自なコマンドを有しているほか,SQL文を実行するDBクライアント機能を備えています。
・Oracleシステム識別子(SID)
OracleDBインスタンスの識別名です。
Oracleのマニュアルサイトではシステム識別子またはSIDと記載されています。
・システム権限
OracleDBの仕様を参照して下さい。
・オブジェクト権限
OracleDBの仕様を参照して下さい。
・ロール
OracleDBの仕様を参照して下さい。
この部品が前提とするサーバを次に示します。
・OracleDBサーバ(実行対象サーバ)
OracleDBがインストールされているサーバです。
利用場面
この部品は,起動中のOracleDBインスタンスに新たなDBユーザーを追加する場合に使用できます。
前提条件
【システム内前提製品】/【実行対象システム内前提製品】/【実行対象システム内前提製品の稼働OS】の最新のサポート状況については,リリースノートを参照してください。
【システム内前提製品】
JP1/Automatic Operation 11-00以降
【実行対象システム内前提製品】
(1)OracleDBサーバ
・Oracle 11g Standard/Enterprise
【実行対象システム内前提製品の稼働OS】
(1)OracleDBサーバ
・Windows Server 2008 R2 Standard/Enterprise/Datacenter
・Windows Server 2012 Standard/Datacenter, Windows Server 2012 R2 Standard/Enterprise/Datacenter
ただし,OracleDBの要求を満たすもの。
【実行対象システム内前提製品の使用条件】
(1)OracleDBサーバに関する条件
・OracleDBが正常にインストール済みであること。
・SQL*Plusがインストール済みであること。
・指定したOracleシステム識別子(SID)に対応するOracleDBインスタンスが起動していること。
注意事項
(1) この部品のプロパティには「"」(ダブルクォーテーション)および「'」(シングルクォーテーション)を含む文字列は指定しないでください。
(2) プロパティ「Oracleシステム識別子(SID)」(database.oracleSid)に指定したOracleシステム識別子(以降,「OracleSID」と呼びます)については,英大文字と小文字を区別します。次に示す禁止文字をOracleSIDに含める事はできません。またこれら以外にもOracle側で制限を設けている場合があります。これら以外の制限についてはOracleDBの仕様をご参照下さい。
禁止文字:
・改行文字(¥n)
・半角スペース( )
・セミコロン(;)
(3) プロパティ「DBユーザーID」(database.dbUserId)と「DBユーザーパスワード」(database.dbUserPassword)に指定できる値は,(2)の禁止文字を含まない30バイト以下の文字列である必要があります。このほかの禁止文字についてはOracleDBの仕様をご参照下さい。また英大文字と小文字は区別されます。
(4) プロパティ「DB権限」(database.dbPrivilege)に(2)の半角スペースを除いた禁止文字を含める事はできません。更に予約語と衝突しない内容である必要があります。予約語とこのほかの禁止文字についてはOracleDBの仕様をご参照下さい。また英大文字小文字は区別されません。存在しない権限名を指定した場合,この部品が異常終了しますがDB権限のないDBユーザーが残ります。必要に応じて削除して下さい。
(5) この部品はレジストリーを参照して,指定されたOracleSIDと対応するインストール先フォルダを取得します。何らかの事情によってレジストリーがインストール直後の状態から更新されているなど,実際のインストール先フォルダとの対応情報を正しく取得できない場合は,OracleSIDに対応するOracleDBインスタンス(以降,「対象のインスタンス」と呼びます)が存在しないかまたはOracleDBがインストールされていないと認識してこの部品が異常終了します。
(6) 対象のインスタンスに設定しているエンコード種別はDBサーバの稼働OSで選択しているエンコード種別と一致している必要があります。一致していない場合は,エラーや誤動作が発生する事があります。
(7) この部品を利用するサービスでは,プロパティ「DBユーザーパスワード」(database.dbUserPassword)にマッピングするプロパティをパスワード型で扱ってください。
(8) この部品が異常終了する時,「ORA-」で始まるエラーコードとメッセージがタスクログに表示されることがあります。そのような場合は,OracleDBのマニュアルサイトなどでこのエラーコードを検索して下さい。
実行権限
・ora_dbaグループに属するユーザーであること。
バージョン
02.00.00
部品のタグ
Control Database,Oracle Database
タスクログに表示される部品の名称
dbAddOracleUser_Win
戻り値
戻り値 |
説明 |
---|---|
0 |
正常 |
12 |
異常(ユーザーミス) プロパティ不正 |
23 |
異常(環境不正) 前提環境不正 |
27 |
異常(エラー内容はタスクログで確認) |
41 |
異常(部品内でエラーを検知) プロパティ未入力(部品スクリプトでエラーを検知) |
プロパティ一覧
プロパティ一覧を次の表に示します。
プロパティキー |
プロパティ名 |
説明 |
デフォルト値 |
入出力種別 |
必須区分 |
---|---|---|---|---|---|
plugin.destinationHost |
実行対象サーバのホスト名 |
この部品を実行するサーバのホスト名またはIPアドレスを指定します。IPv6アドレスには対応していません。 |
− |
入力 |
○ |
database.oracleSid |
Oracleシステム識別子(SID) |
対象のOracleDBインスタンスを示すシステム識別子(SID)を指定します。 |
− |
入力 |
○ |
database.dbUserId |
DBユーザーID |
新規DBユーザーに付与するユーザーIDを指定します。 |
− |
入力 |
○ |
database.dbUserPassword |
DBユーザーパスワード |
新規DBユーザーに付与するパスワードを指定します。 |
− |
入力 |
○ |
database.dbPrivilege |
DB権限 |
新規DBユーザーに付与する権限名のリストをコンマ区切りで指定します。 |
− |
入力 |
△ |
common.returnValue |
部品の戻り値 |
この部品の戻り値が格納されます。 |
− |
出力 |
△ |