PDB$SEEDまたはXMLからのPDBの作成

POST

/database/pdbs/

PDB$SEED、またはデータベース・インスタンスにアクセス可能なXMLメタデータ・ファイルから、プラガブル・データベースを作成します。Oracle Transparent Data Encryptionの使用は、データベースとOracle REST Data Servicesが同じホスト上にあるトポロジでのみサポートされています。このサービスでは、プール構成でdb.cdb.adminUser資格証明を設定する必要があります。クライアントは、このサービスを起動するにはSQL管理者ロールが必要です。

リクエスト

この操作にはリクエスト・パラメータはありません。

先頭に戻る

レスポンス

200 レスポンス

レスポンスは一連のPL/SQL文の実行が成功したことを示すか、プラガブル・データベースを作成するために実行される一連のPL/SQL文を返します。
先頭に戻る

次の例は、cURLを使用してRESTリソースに対するPOSTリクエストを発行することによって、新しいプラガブル・データベースを作成する方法を示しています。

curl -i -X POST -u username:password 
-d @request_body.json 
-H "Content-Type:application/json" https://rest_server_url/ords/_/db-api/stable/database/pdbs/

リクエスト本文の例

ノート:

前述のコマンドで使用されるURL構造https://rest_server_url/resource-pathには、次の要素があります。
  • rest_server_urlはOracle Rest Data Serverが実行されているRESTサーバーです
  • URLの残りの部分には、ORDSコンテキスト・ルート、使用するORDSデータベースAPIのバージョン、およびこの操作のパスが含まれます。PDBライフサイクル管理サービスでは、db.cdb.adminUser資格証明をプール構成に設定する必要があり、この例では、コンテナ・データベースに対してデフォルト・プールが構成されています。

次に、無制限の記憶域を持つPDB$SEEDから、この例でpdb_sampleと呼ばれるプラガブル・データベースを作成するリクエスト本文の例を示します。この例では、fileNameConversionsパラメータも指定され、コンテナ・データベースで実行されるCREATE PLUGGABLE DATABASE文にFILE_NAME_CONVERT句が含まれます。


{
  "method": "CREATE",
  "pdb_name": "pdb_sample",
  "adminName": "pdbadmin",
  "adminPwd": "W3lc0m31",
  "fileNameConversions": "('/disk1/oracle/dbs/pdbseed/','/disk1/oracle/dbs/pdb_sample/')",
  "unlimitedStorage": true,
  "reuseTempFile": true,
  "totalSize": "UNLIMITED",
  "tempSize": "UNLIMITED"
}

次に、カスタム記憶域設定を持つPDB$SEEDからプラガブル・データベースを作成するために生成されたスクリプトを取得するリクエスト本体の例を示します。スクリプトはデータベースで実行されないことに注意してください。この例では、fileNameConversionsパラメータはNONE値を持ち、生成されたCREATE PLUGGABLE DATABASE文にはFILE_NAME_CONVERT=NONE句が含まれます。


{
  "method": "CREATE",
  "pdb_name": "pdb_sample",
  "adminName": "pdbadmin",
  "adminPwd": "W3lc0m31",
  "fileNameConversions": "NONE",
  "reuseTempFile": true,
  "totalSize": "2G",
  "tempSize": "800M",
  "getScript": true
}

次に、sales_pdbというプラガブル・データベースをコンテナ・データベースに接続するためのリクエスト本文の例を示します。この例のリクエスト本文では、プラガブル・データベース定義はsales_pdb.xmlファイルで指定します。


{
  "method": "PLUG",
  "pdb_name": "sales_pdb",
  "xmlFileName": "/disk1/oracle/dbs/sales_pdb.xml",
  "sourceFileNameConversions": "NONE",
  "copyAction": "NOCOPY",
  "fileNameConversions": "NONE",
  "unlimitedStorage": true,
  "reuseTempFile": true,
  "totalSize": "UNLIMITED",
  "tempSize": "UNLIMITED"
}

レスポンス・ヘッダーの例

次の例に、レスポンス・ヘッダーを示します。


HTTP/1.1 200 OK
Date: Fri, 06 Sep 2019 15:51:31 GMT
Content-Type: application/json
X-Frame-Options: SAMEORIGIN
Transfer-Encoding: chunked

レスポンス本文の例

次の例は、JSON形式で返される200のレスポンス本文を示しています。


{
    "statementText": "BEGIN\n\tEXECUTE IMMEDIATE 'CREATE PLUGGABLE DATABASE \"pdb_sample\"\n\t\tUSING ''/disk1/oracle/dbs/sales_db.xml''\n\t\tSOURCE_FILE_NAME_CONVERT=NONE\n\t\tNOCOPY\n\t\tSTORAGE UNLIMITED\tTEMPFILE REUSE\n\t';\nEND;\n/\nALTER PLUGGABLE DATABASE \"pdb_sample\" OPEN READ WRITE INSTANCES=ALL\n/\n",
    "binds": []
}
先頭に戻る