GAGA LIFE.

インフラエンジニアブログ

スポンサーリンク

Oracle 実行計画解析のリファレンス

概要

Oracleで実行計画を読み解く際のリファレンスを記載します。

実行計画のビュー

View Description
V$SQL_SHARED_CURSOR 特定の子カーソルが既存の子カーソルと共有されない理由を示します。
それぞれの列は、カーソルが共有されない具体的な理由を示します。
USE_FEEDBACK_STATS列には、再最適化のために子カーソルが一致していないかどうかが示されます。
V$SQL_PLAN すべての最終計画で使用されているすべての行のスーパーセットが含まれます。
PLAN_LINE_IDには連番が振られますが、単一の最終計画では、IDが連番にならない場合もあります。
V$SQL_PLAN_STATISTICS_ALL (ソートまたはハッシュ結合に)SQLメモリーを使用する行ソースのメモリー使用量統計が含まれます。
このビューは、V$SQL_PLAN内の情報をV$SQL_PLAN_STATISTICSおよび
V$SQL_WORKAREAからの実行統計と連結します。

EXPLAIN PLANによって生成されるOPERATION値とOPTIONS値

Operation Option Description
AND-EQUAL  - 複数のROWIDのセットを受け取り、重複をなくして、そのセットの共通部分を戻す処理。
この処理は単一列索引のアクセス・パスに対して使用されます。
BITMAP CONVERSION TO ROWIDSは、ビットマップ表現を、表にアクセスするために使用できる実際のROWIDに変換します。
FROM ROWIDSは、ROWIDをビットマップ表現に変換します。
COUNTは、実際の値を必要としない場合にROWIDの数を戻します。
INDEX SINGLE VALUEは、索引内の単一のキー値のビットマップを参照します。
RANGE SCANは、ある範囲のキー値のビットマップを取り出します。
FULL SCANは、開始キーまたは終了キーがない場合にビットマップ索引の全体スキャンを実行します。
MERGE レンジ・スキャンの結果の複数のビットマップを1つのビットマップにマージします。
MINUS 片方のビットマップのビットを、もう一方のビットマップから減算します。行ソースは否定述語に対して使用されます。
このオプションは、減算が発生する可能性があるビットマップを作成する非否定述語がある場合にのみ使用できます。
OR 2つのビットマップのビット単位のORを計算します。
AND 2つのビットマップのビット単位のANDを計算します。
KEY ITERATION 表の行ソースから各行を取り出し、ビットマップ索引から対応するビットマップを検索します。
その後、このビットマップのセットは、次のBITMAP MERGE操作で1つのビットマップにマージされます。
CONNECT BY  - CONNECT BY句を含んでいる問合せについて階層順に行を取り出します。
CONCATENATION  - 複数の行のセットを受け取り、そのセットのUNION-ALLを戻す処理。
COUNT  - 表から選択された行の数をカウントする処理。
STOPKEY 戻される行数をWHERE句のROWNUM式によって制限するカウント処理。
CUBE JOIN  - 左側の表またはビューおよび右側のキューブを結合します。
NO_USE_CUBEおよびUSE_CUBEヒントの詳細は、『Oracle Database SQL言語リファレンス』を参照してください。
ANTI 左側の表またはビューおよび右側のキューブに対してアンチ結合を使用します。
ANTI SNA 左側の表またはビューおよび右側のキューブに対してアンチ結合(片面NULL対応)を使用します。
右側の結合列(キューブ側)はNOT NULLです。
OUTER 左側の表またはビューおよび右側のキューブに対して外部結合を使用します。
RIGHT SEMI 左側の表またはビューおよび右側のキューブに対して右側セミ結合を使用します。
CUBE SCAN  - すべてのキューブ・アクセスで内部結合を使用します。
PARTIAL OUTER 少なくとも1つのディメンションで外部結合を使用し、その他のディメンションで内部結合を使用します。
OUTER すべてのキューブ・アクセスで外部結合を使用します。
DOMAIN INDEX  - ドメイン索引からの1つ以上のROWIDの取出し。
オプション列には、ユーザー定義ドメイン・インデックス・コスト関数から与えられた情報が含まれています。
FILTER  - 行のセットを受け取り、そのいくつかを取り除き、残りを戻す処理。
FIRST ROW  - 問合せで選択される最初の行のみの取出し。
FOR UPDATE  - FOR UPDATE句が含まれている問合せによって選択される行を取り出し、ロックする処理。
HASH GROUP BY GROUP BY句を持つ問合せで、行のセットを複数のグループにハッシュする処理。
GROUP BY PIVOT GROUP BY句を持つ問合せで、行のセットを複数のグループにハッシュする処理。
PIVOT操作は、HASH GROUP BY演算子のピボット固有の最適化を示します。
HASH JOIN
(結合操作)
 - 2つのセットの行を結合し、結果を戻す操作。この結合方法は、データのラージ・データ・セット(DSSやバッチなど)の結合に役立ちます。
この結合条件は、第2の表にアクセスする場合に有効です。
問合せオプティマイザは、2つの表またはデータ・ソースの小さいほうを使用して、メモリー内に結合キーについてのハッシュ表を作成します。
次に、大きいほうの表をスキャンし、ハッシュ表を調べて結合された行を見つけます。
ANTI ハッシュ(左側)アンチ結合
SEMI ハッシュ(左側)セミ結合
RIGHT ANTI ハッシュ右側アンチ結合
RIGHT SEMI ハッシュ右側セミ結合
OUTER ハッシュ(左側)外部結合
RIGHT OUTER ハッシュ(右側)外部結合。
INDEX
(アクセス方法)
UNIQUE SCAN 索引からの単一のROWIDの取出し。
RANGE SCAN 索引からの1つ以上のROWIDの取出し。索引値は昇順でスキャンされます。
RANGE SCAN DESCENDING 索引からの1つ以上のROWIDの取出し。索引値は降順でスキャンされます。
FULL SCAN スタート・キーおよびストップ・キーがない場合の、索引からのすべてのROWIDの取得。
索引値は昇順でスキャンされます。
FULL SCAN DESCENDING スタート・キーおよびストップ・キーがない場合の、索引からのすべてのROWIDの取得。
索引値は降順でスキャンされます。
FAST FULL SCAN マルチブロックREADを使用した全ROWID(および列の値)の取得。
ソート順は定義できません。
索引付けされた列に対してのみ、全表スキャンと比較されます。
コストベース・オプティマイザでのみ使用可能です。
SKIP SCAN 索引内の先頭列を使用しない、連結索引からのROWIDの取得。
コストベース・オプティマイザでのみ使用可能です。
INLIST ITERATOR  - INリスト述語内の各値に対して、計画内の次の操作を反復します。
INTERSECTION  - 2つの行のセットを受け取り、重複をなくして、そのセットの共通部分を戻す処理。
MERGE JOIN
(結合操作)
 - 2つの行のセットを受け取り、それぞれを特定の値でソートし、一方のセットの各行を他方の行と突き合せて結合し、その結果を戻す処理。
OUTER 外部結合文を実行するマージ結合処理。
ANTI マージ・アンチ結合
SEMI マージ・セミ結合
CARTESIAN 文中に他の表への結合条件を持たない1つ以上の表について発生する操作です。
結合とともに発生する可能性がありますが、計画内ではCARTESIANとフラグが付かないことがあります。
CONNECT BY  - CONNECT BY句を含んでいる問合せに対する、階層順での行の取出し。
MAT_VIEW REWITE ACCESS
(アクセス方法)
FULL マテリアライズド・ビューのすべての行の取出し。
SAMPLE マテリアライズド・ビューのサンプル行の取出し。
CLUSTER 索引クラスタのキーの値に基づいた、マテリアライズド・ビューからの行の取出し
HASH ハッシュ・クラスタのキーの値に基づいた、マテリアライズド・ビューからの行の取出し。
BY ROWID RANGE ROWID範囲に基づいたマテリアライズド・ビューからの行の取出し
SAMPLE BY ROWID RANGE ROWID範囲に基づいたマテリアライズド・ビューからのサンプル行の取出し
BY USER ROWID ユーザー指定のROWIDを使用してマテリアライズド・ビューの行が指定される場合
BY INDEX ROWID マテリアライズド・ビューがパーティション化されておらず、索引を使用して行が指定される場合
BY GLOBAL INDEX ROWID マテリアライズド・ビューがパーティション化されており、グローバル索引のみを使用して行が指定される場合
BY LOCAL INDEX ROWID マテリアライズド・ビューがパーティション化されており、1つ以上のローカル索引と、場合によっては
いくつかのグローバル索引を使用して行が指定される場合。
パーティション区間:
パーティション区間は次のようにして計算されている可能性があります。
前のPARTITIONステップによって決定される場合。この場合、PARTITION_START列の値とPARTITION_STOP列の値はPARTITIONステップ内の値をレプリケートし、PARTITION_IDにはPARTITIONステップのIDが組み込まれます。
PARTITION_STARTおよびPARTITION_STOPに使用できる値は、NUMBER(n)、KEYおよびINVALIDです。
MAT_VIEW REWRITE ACCESSまたはINDEXステップ自体で決定される場合。この場合、PARTITION_IDにはそのステップのIDが組み込まれます。PARTITION_STARTおよびPARTITION_STOPに使用できる値は、NUMBER(n)、KEY、ROW REMOVE_LOCATION(MAT_VIEW REWRITE ACCESSのみ)およびINVALIDです。
MINUS  - 2つの行のセットを受け取り、最初のセットにあって2番目のセットにない行を戻して、重複をなくす処理
NESTED LOOPS
(結合操作)
 - 外側のセットと内側のセット、2つの行のセットを受け取る処理。
Oracle Databaseは、外側のセットの各行を内側のセットの各行と比較し、条件を満たす行を戻します。
この結合方法は、小さいサブセットのデータを結合する場合(OLTP)に役立ちます。
この結合条件は、第2の表にアクセスする場合に有効です。
OUTER 外部結合文を実行するネステッド・ループ操作
PARTITION  - PARTITION_START列およびPARTITION_STOP列によって指定された範囲の各パーティションに対して、計画内の次の操作を反復します。
PARTITIONは、単一のパーティション・オブジェクト(表または索引)や同一レベル・パーティション・オブジェクトのセット(パーティション表やそのローカル索引)に適用できるパーティションの区間を示します。
パーティションの区間は、PARTITIONのPARTITION_STARTおよびPARTITION_STOPの値で指定されます。
SINGLE 1つのパーティションへのアクセス
ITERATOR 多数のパーティション(サブセット)へのアクセス
ALL すべてのパーティションへのアクセス
INLIST INリスト述語を基準にしたイテレータに類似するもの
INVALID アクセスするよう設定されているパーティションが空であることを示します
PX ITERATOR BLOCK、CHUNK パラレル実行サーバー・セット間でのブロックまたはチャンク範囲へのオブジェクトの分割を実装します
PX COORDINATOR  - パラレル実行サーバーを使用して下位のパラレル計画を制御、スケジュールおよび実行する問合せコーディネータを実装します。
また、パラレルに実行され、常に下位にPX SEND QC操作を持つ計画部分の終わりとして、シリアライズ・ポイントを表します。
PX PARTITION  - セマンティクスは通常のPARTITION操作と同じですが、パラレル計画に表示されます。
PX RECEIVE  - PX SENDノード上で実行される送信側/プロデューサ(QCまたはパラレル実行サーバー)から再パーティション化されたデータを読み取る、コンシューマ/受信側パラレル実行ノードを示します。以前は、この情報はDISTRIBUTION列に表示されていました。
PX SEND QC (RANDOM)、HASH、RANGE スレーブの2つのパラレル実行サーバー・セットの間における配分方法を実装します。2つのセット間の境界と、送信側/プロデューサ側(QCまたはスレーブ)でのデータのパーティション化方法を示します。
以前は、この情報はDISTRIBUTION列に表示されていました。
REMOTE  - リモート・データベースからのデータの取出し
SEQUENCE  - 順序値のアクセスを伴う処理
SORT AGGREGATE 選択した行のグループにグループ関数を適用した結果として取得される単一行の取出し
UNIQUE 行のセットをソートし、重複をなくす処理
GROUP BY GROUP BY句を持つ問合せで、行のセットを複数のグループにソートする処理
GROUP BY PIVOT GROUP BY句を持つ問合せで、行のセットを複数のグループにソートする処理。
PIVOT操作は、SORT GROUP BY演算子のピボット固有の最適化を示します。
JOIN マージ結合の前に、一連の行をソートする操作
ORDER BY ORDER BY句を持つ問合せに対して行のセットをソートする処理
TABLE ACCESS
(アクセス方法)
FULL 表のすべての行の取出し
SAMPLE 表のサンプル取得された行の取出し
CLUSTER 索引クラスタのキーの値に基づいた、表からの行の取出し
HASH ハッシュ・クラスタのキーの値に基づいた、表からの行の取出し
BY ROWID RANGE ROWID範囲に基づいた表からの行の取出し
SAMPLE BY ROWID RANGE ROWID範囲に基づいた表からのサンプル行の取出し
BY USER ROWID ユーザー指定のROWIDを使用して表の行が指定される場合
BY INDEX ROWID 表がパーティション化されておらず、索引を使用して行が指定される場合
BY GLOBAL INDEX ROWID 表がパーティション化されており、グローバル索引のみを使用して行が指定される場合
BY LOCAL INDEX ROWID 表がパーティション化されており、1つ以上のローカル索引と場合によってはいくつかのグローバル索引を使用して、行が指定される場合。
パーティション区間:
パーティション区間は次のようにして計算されている可能性があります。
前のPARTITIONステップによって決定される場合。
この場合、PARTITION_START列の値とPARTITION_STOP列の値はPARTITIONステップ内の値をレプリケートし、PARTITION_IDにはPARTITIONステップのIDが組み込まれます。
PARTITION_STARTおよびPARTITION_STOPに使用できる値は、NUMBER(n)、KEYおよびINVALIDです。
TABLE ACCESSまたはINDEXステップ自体で決定される場合。
この場合、PARTITION_IDにはそのステップのIDが組み込まれます。
PARTITION_STARTおよびPARTITION_STOPに使用できる値は、NUMBER(n)、KEY、ROW REMOVE_LOCATION(TABLE ACCESSのみ)およびINVALIDです。
TRANSPOSE  - GROUP BYの結果を入れ換えて最終的にピボットされたデータを生成するPIVOT操作を評価する操作
UNION  - 2つの行のセットを受け取り、重複をなくして、そのセットの連結結果を戻す処理
UNPIVOT  - 列から行にデータを回転させる操作
VIEW  - ビューの問合せを実行し、結果の行を別の処理に戻す処理

参考資料

https://docs.oracle.com/cd/E82638_01/TGSQL/reading-execution-plans.htm#GUID-7957B335-D36A-42BF-96BB-FF47FFBA4DFD

Oracle® Database SQLチューニング・ガイド 12cリリース2 (12.2)
7 実行計画の読取り

Oracle [12.2]SQLトレースの出力内容

概要

12cR2より、SQLトレースの実行統計にstartsの情報が出力されるように追加修正されているようです。
starts:実行計画内の各ステップでの実行回数を表示しています。
           DBMS_XPLAN.DISPLAY_CURSORで実行統計を表示した場合にも出力されます。

出力内容

12.1
SQL ID: fb2bdb6qyahwn Plan Hash: 615168685
::
select *
from
emp e, dept d where e.deptno = d.deptno
 :
call     count      cpu    elapsed       disk      query    current       rows
------- ------ -------- ---------- ---------- ---------- ---------- ----------
Parse        1     0.00       0.00          0         36          0          0
Execute      1     0.00       0.00          0          0          0          0
Fetch        2     0.00       0.00          0         15          0         14
------- ------ -------- ---------- ---------- ---------- ---------- ----------
total        4     0.00       0.00          0         51          0         14
 :
Misses in library cache during parse: 1
Optimizer mode: ALL_ROWS
Parsing user id: 105
Number of plan statistics captured: 1
 :
Rows (1st) Rows (avg) Rows (max) Row Source Operation
---------- ---------- ---------- ---------------------------------------------------
        14         14         14 HASH JOIN (cr=15 pr=0 pw=0 time=140 us cost=6 size=1638 card=14)
         4          4          4  TABLE ACCESS FULL DEPT (cr=7 pr=0 pw=0 time=26 us cost=3 size=120 card=4)
        14         14         14  TABLE ACCESS FULL EMP (cr=8 pr=0 pw=0 time=10 us cost=3 size=1218 card=14)
12.2
SQL ID: fb2bdb6qyahwn Plan Hash: 844388907
 :
select *
from
emp e, dept d where e.deptno = d.deptno
 :
call     count      cpu    elapsed       disk      query    current       rows
------- ------ -------- ---------- ---------- ---------- ---------- ----------
Parse        1     0.00       0.00          0          0          0          0
Execute      1     0.00       0.00          0          0          0          0
Fetch        2     0.00       0.00          0         11          0         14
------- ------ -------- ---------- ---------- ---------- ---------- ----------
total        4     0.00       0.00          0         11          0         14
 :
Misses in library cache during parse: 0
Optimizer mode: ALL_ROWS
Parsing user id: 121
Number of plan statistics captured: 1
 :
Rows (1st) Rows (avg) Rows (max) Row Source Operation
---------- ---------- ---------- ---------------------------------------------------
        14         14         14 MERGE JOIN (cr=11 pr=0 pw=0 time=125 us starts=1 cost=6 size=812 card=14)
         4          4          4  TABLE ACCESS BY INDEX ROWID DEPT (cr=4 pr=0 pw=0 time=36 us starts=1 cost=2 size=80 card=4)
         4          4          4   INDEX FULL SCAN PK_DEPT (cr=2 pr=0 pw=0 time=18 us starts=1 cost=1 size=0 card=4)(object id 74419)
        14         14         14  SORT JOIN (cr=7 pr=0 pw=0 time=80 us starts=4 cost=4 size=532 card=14)
        14         14         14   TABLE ACCESS FULL EMP (cr=7 pr=0 pw=0 time=51 us starts=1 cost=3 size=532 card=14)
 :
SQL_ID fb2bdb6qyahwn, child number 0
-------------------------------------
select * from emp e, dept d where e.deptno = d.deptno
 :
Plan hash value: 844388907
 :
--------------------------------------------------------------------------------------------------
| Id  | Operation                    | Name    | Starts | E-Rows | A-Rows |     A-Time | Buffers |
--------------------------------------------------------------------------------------------------
|   0 | SELECT STATEMENT             |         |      1 |        |     14 |00:00:00.01 |      11 |
|   1 |  MERGE JOIN                  |         |      1 |     14 |     14 |00:00:00.01 |      11 |
|   2 |   TABLE ACCESS BY INDEX ROWID| DEPT    |      1 |      4 |      4 |00:00:00.01 |       4 |
|   3 |    INDEX FULL SCAN           | PK_DEPT |      1 |      4 |      4 |00:00:00.01 |       2 |
|*  4 |   SORT JOIN                  |         |      4 |     14 |     14 |00:00:00.01 |       7 |
|   5 |    TABLE ACCESS FULL         | EMP     |      1 |     14 |     14 |00:00:00.01 |       7 |
--------------------------------------------------------------------------------------------------

参考資料

Oracleの実行計画を読んでみよう! #dbts2017

https://docs.oracle.com/cd/E82638_01/TGSQL/generating-and-displaying-execution-plans.htm#GUID-60E30B1C-342B-4D71-B154-C26623D6A3B1

Oracle® Database SQLチューニング・ガイド 12cリリース2 (12.2) 6 実行計画の生成と表示

Oracle 診断イベントのリスト

概要

Oracleデータベースで何らかの問題が発生した場合の調査のためにSR(Oracleサポート)より診断イベントの設定を依頼される場合があります。
発生した問題によってSRが案内してくる診断イベントは異なりますが、そもそも診断イベントにはどのようなものがあるのかを確認方法を踏まえて確認しました。

確認方法

Eventは、ほとんど10000〜10999の範囲で番号が付与されています。
以下のPL/SQLで上記範囲のイベントメッセージを出力しています。

SET SERVEROUTPUT ON
DECLARE
   err_msg VARCHAR2(150);
BEGIN
   dbms_output.enable (1000000);
   FOR err_num IN 10000..10999
   LOOP
     err_msg := SQLERRM (-err_num);
     IF err_msg NOT LIKE '%Message '||err_num||' not found%' THEN
       dbms_output.put_line (err_msg);
     END IF;
   END LOOP;
END;
/

UNIX環境では、以下のファイルの番号「10000-10999」を参照することでより詳細情報が取得可能になっています。

  $ORACLE_HOME/rdbms/mesg/oraus.msg

補足ですが、上記ファイルは、oerrの参照先です。

参照方法

event=10000
while [ $event -ne 10999 ]
do
   event=`expr $event + 1`
   oerr ora $event
done

なお、現在有効になっているイベントは以下で確認可能です。
※この方法は、11gR1以降のバージョンで可能となっています。 eventdumpsession

実行例

SQL> alter session set events '10046 trace name context forever, level 12';
Session altered.
SQL> oradebug setmypid
Statement processed.
SQL> oradebug eventdump session
sql_trace level=12

参考資料 

Optimizing Oracle Performance: A Practitioner's Guide to Optimizing Response Time

Optimizing Oracle Performance: A Practitioner's Guide to Optimizing Response Time

 

 http://onefact.jp/wp/2015/05/31/oerr%E3%81%AE%E3%83%A1%E3%83%83%E3%82%BB%E3%83%BC%E3%82%B8%E3%82%92%E6%97%A5%E6%9C%AC%E8%AA%9E%E3%81%A7%E8%A1%A8%E7%A4%BA%E3%81%95%E3%81%9B%E3%82%8B/

Oracle CDB/PDB起動停止の手順

概要

Oracle DB 12c CDB/PDB 起動停止の方法について記載します。

環境情報

  • ホストOS:Windows 10
  • VirtualBox:Ver 5.2.8
  • ゲストOS:CentOS 7 64bit
  • Oracle:Oracle Database EE 12.2.0.1

起動手順

1.CDB起動
sqlplus / as sysdba
startup
2.PDB起動手順(全てのPDB)
show con_name
show pdbs
alter pluggable database all open;
show pdbs
3.PDB起動手順(特定のPDB)

--CDBから実行する場合

sqlplus / as sysdba
show pdbs
alter pluggable database <対象PDB名> open;
show pdbs

--PDBから実行する場合
※前提として、接続識別子を介して接続可能なこと(tnsnames.oraの編集)

sqlplus sys/XXXXX@pdb1 as sysdba
show con_name
show pdbs
startup

停止手順

1.PDB停止手順(すべてのPDB)
sqlplus / as sysdba
show con_name
show pdbs
alter pluggable database all close immediate;
show pdbs
2.PDB停止手順(特定のPDB)

--CDBから実行する場合

conn / as sysdba
show con_name
show pdbs
alter pluggable database pdb1 close immediate;
show pdbs

--PDBから実行する場合
※前提として、接続識別子を介して接続可能なこと(tnsnames.oraの編集)

sqlplus sys@testdb1 as sysdba
show con_name
show pdbs
shutdown immediate
show pdbs
3.CDB停止手順
shutdown immediate

Appendix

PDBの自動起動設定

  • 12.1.0.2以降:SQL
  • 12.1.0.1:トリガー作成
12.1.0.2以降
sqlplus / as sysdba
alter session set container = pdb1;
show con_name;
alter pluggable database pdb1 open;
alter pluggable database pdb1 save state;
解除方法
alter pluggable database pdb1 discard state;
12.1.0.1
CREATE OR REPLACE TRIGGER <トリガー名>
AFTER STARTUP ON DATABASE
BEGIN
EXECUTE IMMEDIATE 'ALTER PLUGGABLE DATABASE <PDB名> OPEN';
END auto_start_pdbs;
/

参考資料

https://docs.oracle.com/cd/E57425_01/121/NEWFT/chapter12102.htm#BGBFACEB
How to Preserve Open Mode of PDBs When the CDB Restarts (Doc ID 1933511.1)
マルチテナント・コンテナ・データベースでの STARTUP トリガーの使用(KROWN:165108) (Doc ID 1767230.1)

VirtualBox ホストOSとゲストOSのファイル共有

概要

Windows10上で実行しているVirtualBoxで、ホストOS(Windows)とゲストOS(VirtualBoxで起動しているのCentOS)間でファイル共有を実施する手順を記載します。
利用する機能は「共有フォルダー」機能です。

環境情報

  • ホストOS:Windows 10
  • VirtualBox:Ver 5.2.8
  • ゲストOS:CentOS 7 64bit

設定手順

1.Guest Additionsインストール(ゲスト側作業)

仮想マシンの起動

f:id:undercovergeek:20180511080342j:plain

対象仮想マシンを選択し、上部ツールバー「起動」をクリックします。
ゲストOSにrootユーザーでログインし、カーネルアップデートを実行し、終了後にREBOOT。

# yum update kernel
# reboot

再起動後、rootユーザーにてログイン。
アップデートを実施し、必要なライブラリをインストール。

# yum update
# yum install gcc make bzip2 kernel-devel

f:id:undercovergeek:20180511075841j:plain

[デバイス]-->[Guest Additions CDイメージの挿入]を選択します。
セットしたGuest Additions CDイメージをマウントし、実行してください。
実行後、仮想マシンをシャットダウンします。

# mount /dev/cdrom /mnt
# cd /mnt
# ./VBoxLinuxAdditions.run
# shutdown -h now
2.共有するフォルダを作成(ホスト側作業)

f:id:undercovergeek:20180511075845j:plain

Windows10(ホストOS)側のフォルダを任意の名称で(例:vbox_share)作成してください。
次に、対象仮想マシンを選択し、上のツールバーの「設定」を押下します。

f:id:undercovergeek:20180511075847j:plain

設定(共有フォルダ)ウィンドウの右端にある"+"ボタンを押下。

f:id:undercovergeek:20180511075850j:plain

共有フォルダーの追加で、下記のように設定後"OK"を押下。

  • フォルダーのパス:Windows(ホスト)側で作成したディレクトリ
  • フォルダー名:任意
  • 読み込み専用(R):チェックなし
  • 自動マウント(A):チェック
  • 永続化する(M):チェック
3.ゲストOSの設定(ゲスト側作業)

仮想マシンを起動して、rootユーザーにてログインします。
ここまでの作業が正常に実行できていれば/mediaに接頭辞"sf_"のディレクトリがマウントされているはずです。

# ll /media/
合計 4
drwxrwx---. 1 root vboxsf 4096 5月 4 14:56 sf_vbox_share
4.事後作業

既存ユーザーをvboxsfグループに追加し、有効にするため再起動。
※追加しない場合、rootもしくはvboxsfグループ所属ユーザーのみアクセス可能

# gpasswd -a oracle vboxsf
# reboot

Oracleサンプル・スキーマのインストール

概要

前回、Oracle Databaseをインストールしましたが、デフォルトでは下記の通りHuman Resources(HR)スキーマを作成するスクリプトが配置されています。
しかしながら、その他(SHやOE)のスクリプトは入っていませんでした。

[oracle@aaeca05e3663 schema]$ pwd
/opt/oracle/product/12.2.0.1/dbhome_1/demo/schema
[oracle@aaeca05e3663 schema]$ ll
total 60
-rw-r--r-- 1 oracle oinstall 2322 Apr 3 2009 drop_sch.sql
drwxr-xr-x 2 oracle oinstall 205 May 4 06:55 human_resources
drwxr-xr-x 2 oracle oinstall 6 May 4 06:58 log
-rw-r--r-- 1 oracle oinstall 1836 May 4 06:59 mk_dir.sql
-rw-r--r-- 1 oracle oinstall 1685 Nov 6 2015 mk_dir.sql.sbs
-rw-r--r-- 1 oracle oinstall 27570 Jul 1 2014 mkplug.sql
-rw-r--r-- 1 oracle oinstall 16894 Jul 1 2014 sted_mkplug.sql.dbl

今後、色々試行錯誤するのにその他のサンプルスキーマも必要と考えられたためインストールしてみました。

環境情報

  • ホストOS:Windows 10
  • VirtualBox:Ver 5.2.8
  • ゲストOS:CentOS 7 64bit
  • コンテナOS:Oracle Linux 7.5
  • Oracle:Oracle Database EE 12.2.0.1 

スクリプトの場所

https://github.com/oracle/db-sample-schemas/releases/tag/v12.2.0.1

事前に上記よりOracle Database 12.2.0.1 Sample Schemasを作成するスクリプトをダウンロードしています。

ダウンロードファイル:db-sample-schemas-12.2.0.1.zip

コンテナ内のスクリプト配置場所

/home/oracle

■ダウンロードファイルの解凍
[oracle@aaeca05e3663 ~]$ pwd
/home/oracle
[oracle@aaeca05e3663 ~]$ ll
total 36516
-rw-rw-r-- 1 oracle oinstall 37389564 May 6 05:41 db-sample-schemas-12.2.0.1.zip
lrwxrwxrwx 1 oracle oinstall 26 May 4 07:00 setPassword.sh -> /opt/oracle/setPassword.sh
[oracle@aaeca05e3663 ~]$ unzip db-sample-schemas-12.2.0.1.zip
Archive: db-sample-schemas-12.2.0.1.zip
99049719d53c2e0810b7a8462965636b98161131
creating: db-sample-schemas-12.2.0.1/
inflating: db-sample-schemas-12.2.0.1/CONTRIBUTING.md
inflating: db-sample-schemas-12.2.0.1/LICENSE.md
inflating: db-sample-schemas-12.2.0.1/README.md
inflating: db-sample-schemas-12.2.0.1/README.txt
creating: db-sample-schemas-12.2.0.1/bus_intelligence/
inflating: db-sample-schemas-12.2.0.1/bus_intelligence/bi_main.sql
inflating: db-sample-schemas-12.2.0.1/bus_intelligence/bi_oe_pr.sql
inflating: db-sample-schemas-12.2.0.1/bus_intelligence/bi_sh_pr.sql
inflating: db-sample-schemas-12.2.0.1/bus_intelligence/bi_views.sql
~略~
inflating: db-sample-schemas-12.2.0.1/shipping/qs_drop.sql
inflating: db-sample-schemas-12.2.0.1/shipping/qs_es.sql
inflating: db-sample-schemas-12.2.0.1/shipping/qs_main.sql
inflating: db-sample-schemas-12.2.0.1/shipping/qs_os.sql
inflating: db-sample-schemas-12.2.0.1/shipping/qs_run.sql
inflating: db-sample-schemas-12.2.0.1/shipping/qs_ws.sql
[oracle@aaeca05e3663 ~]$ ll
total 36520
drwxr-xr-x 9 oracle oinstall 4096 May 18 2016 db-sample-schemas-12.2.0.1
-rw-rw-r-- 1 oracle oinstall 37389564 May 6 05:41 db-sample-schemas-12.2.0.1.zip
lrwxrwxrwx 1 oracle oinstall 26 May 4 07:00 setPassword.sh -> /opt/oracle/setPassword.sh
[oracle@aaeca05e3663 ~]$ cd db-sample-schemas-12.2.0.1
[oracle@aaeca05e3663 db-sample-schemas-12.2.0.1]$ ls
CONTRIBUTING.md README.md bus_intelligence human_resources mk_dir.sql mksample.sql mkverify.sql product_media shipping
LICENSE.md README.txt drop_sch.sql info_exchange mkplug.sql mkunplug.sql order_entry sales_history
■READMEファイルの確認
[oracle@aaeca05e3663 db-sample-schemas-12.2.0.1]$ cat README.txt
README.txt
Created 25-NOV-2003
Updated 19-Mar-2015
Copyright (c) 2015 Oracle
Permission is hereby granted, free of charge, to any person obtaining
a copy of this software and associated documentation files (the
"Software"), to deal in the Software without restriction, including
without limitation the rights to use, copy, modify, merge, publish,
distribute, sublicense, and/or sell copies of the Software, and to
permit persons to whom the Software is furnished to do so, subject to
the following conditions:
~略~
2. Instructions to create the schemas:
2.1 Decide on passwords for the Sample Schemas. Here, we are using
placeholder names inside "<" and ">" brackets:
SYSTEM: <SYSTEM_password>
SYS: <SYS_password>
HR: <HR_password>
OE: <OE_password>
PM: <PM_password>
IX: <IX_password>
SH: <SH_password>
BI: <BI_password>
2.2 Verify the value for the default tablespace, the temporary
tablespace, and the log file directory. For illustration purposes,
the values are:
default tablespace: EXAMPLE
temporary tablespace: TEMP
log file directory: $ORACLE_HOME/demo/schema/log
NOTE: Use your own passwords.
2.3 Verify the connect string for the database. For illustration
purposes, the value of <connect_string> for database pdb is:
connect_string: localhost:1521/pdb
The connect_string may also be a valid tnsnames.ora entry.
NOTE: Due to referencing external tables under the sample
schema directory, the sample schema files must be
extracted on and mksample executed on the host
containing the database.
2.4 Invoke the Sample Schema creation script. Using the values listed
in Sections 2.1, 2.2, and 2.3 the command would look like this:
SQL> @?/demo/schema/mksample <SYSTEM_password> <SYS_password>
<HR_password> <OE_password> <PM_password> <IX_password>
<SH_password> <BI_password> EXAMPLE TEMP
$ORACLE_HOME/demo/schema/log/ localhost:1521/pdb
The mksample script lists all the objects created in the data dictionary.
~略~
[oracle@aaeca05e3663 db-sample-schemas-12.2.0.1]$ cat README.md
# Oracle Database Sample Schemas
Copyright (c) 2016 Oracle
Permission is hereby granted, free of charge, to any person obtaining
a copy of this software and associated documentation files (the
"Software"), to deal in the Software without restriction, including
without limitation the rights to use, copy, modify, merge, publish,
distribute, sublicense, and/or sell copies of the Software, and to
permit persons to whom the Software is furnished to do so, subject to
the following conditions:
~略~
### 2.1. Clone this repository
Login as the Oracle Database software owner and clone the repository, for example
```
or download and extract the ZIP file:
```shell
unzip db-sample-schemas.zip
```
The schema directory should be owned by the Oracle Database software owner.
### 2.2. Change directory
```shell
cd $HOME/db-sample-schemas
```
### 2.3. Change all embedded paths to match your working directory
The installation scripts need your current directory embedded in
various locations. Use a text editor or the following Perl script to
make the changes, replacing occurrences of the token `__SUB__CWD__`
with your current working directory, for example
`/home/oracle/db-sample-schemas`
```shell
perl -p -i.bak -e 's#__SUB__CWD__#'$(pwd)'#g' *.sql */*.sql */*.dat
```
### 2.4. Set the Oracle environment
```shell
source /usr/local/bin/oraenv
```
*Note*: Oracle's `sqlldr` utility needs to be in `$PATH` for correct
loading of the Product Media (PM) and Sales History (SH) schemas.
### 2.5. Run the installation script
Review the [README.txt](#README.txt) for information on passwords and
pre-requirements. In particular, verify your default and temporary
tablespace names, and choose a password for each schema.
Start SQL*Plus and run the top level installation script as
discussed in [README.txt](#README.txt):
```shell
sqlplus system/systempw@connect_string
@mksample systempw syspw hrpw oepw pmpw ixpw shpw bipw users temp /your/path/to/log/ connect_string
```
*Note*: Use an absolute path and also append a trailing slash to the log directory name.
~略~
■README内の手順実行
[oracle@aaeca05e3663 db-sample-schemas-12.2.0.1]$ /opt/oracle/product/12.2.0.1/dbhome_1/perl/bin/perl -p -i.bak -e 's#__SUB__CWD__#'$(pwd)'#g' *.sql */*.sql */*.dat
■EXAMPLESスキーマ用表領域作成
[oracle@aaeca05e3663 db-sample-schemas-12.2.0.1]$ sqlplus /nolog
SQL*Plus: Release 12.2.0.1.0 Production on Sun May 6 06:51:08 2018
Copyright (c) 1982, 2016, Oracle. All rights reserved.
SQL> conn /as sysdba
Connected.
SQL> alter session set container=pdb1;
Session altered.
SQL> show pdbs;
CON_ID CON_NAME OPEN MODE RESTRICTED
---------- ------------------------------ ---------- ----------
3 PDB1 READ WRITE NO
SQL> set line 300
SQL> set pages 10000
SQL> col TABLESPACE_NAME for a20
SQL> col FILE_NAME for a60
SQL> select f.file_id,f.tablespace_name,f.file_name,f.bytes,f.blocks,f.autoextensible
2 from dba_tablespaces t,dba_data_files f
3 where t.tablespace_name = f.tablespace_name
4 order by f.file_id;
FILE_ID TABLESPACE_NAME FILE_NAME BYTES BLOCKS AUT
---------- -------------------- ------------------------------------------------------------ ---------- ---------- ---
9 SYSTEM /opt/oracle/oradata/orcl/pdb1/system01.dbf 272629760 33280 YES
10 SYSAUX /opt/oracle/oradata/orcl/pdb1/sysaux01.dbf 377487360 46080 YES
11 UNDOTBS1 /opt/oracle/oradata/orcl/pdb1/undotbs01.dbf 104857600 12800 YES
12 USERS /opt/oracle/oradata/orcl/pdb1/users01.dbf 5242880 640 YES
SQL> create tablespace examples
2 datafile '/opt/oracle/oradata/orcl/pdb1/examples.dbf'
3 size 1G
4 autoextend on maxsize unlimited;
Tablespace created.
■スキーマ作成
SQL> !ls -la
total 176
drwxr-xr-x 9 oracle oinstall 4096 May 6 06:49 .
drwx------ 1 oracle oinstall 124 May 6 06:45 ..
-rw-r--r-- 1 oracle oinstall 117 May 18 2016 CONTRIBUTING.md
-rw-r--r-- 1 oracle oinstall 1050 May 18 2016 LICENSE.md
-rw-r--r-- 1 oracle oinstall 4931 May 18 2016 README.md
-rw-r--r-- 1 oracle oinstall 5263 May 18 2016 README.txt
drwxr-xr-x 2 oracle oinstall 180 May 6 06:49 bus_intelligence
-rw-r--r-- 1 oracle oinstall 3633 May 6 06:49 drop_sch.sql
-rw-r--r-- 1 oracle oinstall 3633 May 18 2016 drop_sch.sql.bak
drwxr-xr-x 2 oracle oinstall 4096 May 6 06:49 human_resources
drwxr-xr-x 2 oracle oinstall 168 May 6 06:49 info_exchange
-rw-r--r-- 1 oracle oinstall 2821 May 6 06:49 mk_dir.sql
-rw-r--r-- 1 oracle oinstall 2740 May 18 2016 mk_dir.sql.bak
-rw-r--r-- 1 oracle oinstall 27972 May 6 06:49 mkplug.sql
-rw-r--r-- 1 oracle oinstall 27756 May 18 2016 mkplug.sql.bak
-rw-r--r-- 1 oracle oinstall 7463 May 6 06:49 mksample.sql
-rw-r--r-- 1 oracle oinstall 7166 May 18 2016 mksample.sql.bak
-rw-r--r-- 1 oracle oinstall 6592 May 6 06:49 mkunplug.sql
-rw-r--r-- 1 oracle oinstall 6592 May 18 2016 mkunplug.sql.bak
-rw-r--r-- 1 oracle oinstall 6123 May 6 06:49 mkverify.sql
-rw-r--r-- 1 oracle oinstall 6123 May 18 2016 mkverify.sql.bak
drwxr-xr-x 3 oracle oinstall 8192 May 6 06:49 order_entry
drwxr-xr-x 2 oracle oinstall 4096 May 6 06:49 product_media
drwxr-xr-x 2 oracle oinstall 4096 May 6 06:49 sales_history
drwxr-xr-x 2 oracle oinstall 4096 May 6 06:49 shipping

--スクリプト実行(XXXXXXXXの部分にはパスワード入力)

@mksample.sql XXXXXXXX XXXXXXXX XXXXXXXX XXXXXXXX XXXXXXXX XXXXXXXX XXXXXXXX XXXXXXXX EXAMPLES TEMP $ORACLE_HOME/demo/schema/log/ localhost:1521/pdb1

※ターミナルログ上、トランザクションの実行/COMMITは実行されているものの色々エラーが出力されているように見えます。

■事後確認
SQL> select username from dba_users;
USERNAME
------------------------------------------------------------------------------------------
SYS
SYSTEM
XS$NULL
LBACSYS
OUTLN
DBSNMP
~略~
SYSDG
SPATIAL_CSW_ADMIN_USR
HR
BI
OE
PM
IX
SH
SQL> conn hr/XXXXXXXX@//localhost:1521/pdb1
SQL> set line 1000
SQL> set pages 2000
SQL> col TNAME for a30
SQL> select * from tab
TNAME TABTYPE CLUSTERID
------------------------------ ------- ----------
COUNTRIES TABLE
DEPARTMENTS TABLE
EMPLOYEES TABLE
EMP_DETAILS_VIEW VIEW
JOBS TABLE
JOB_HISTORY TABLE
LOCATIONS TABLE
REGIONS TABLE
8 rows selected.
SQL> conn sh/XXXXXXX@//localhost:1521/pdb1
Connected.
SQL> select * from tab;
TNAME TABTYPE CLUSTERID
------------------------------ ------- ----------
CAL_MONTH_SALES_MV TABLE
CHANNELS TABLE
COSTS TABLE
COUNTRIES TABLE
CUSTOMERS TABLE
DR$SUP_TEXT_IDX$I TABLE
DR$SUP_TEXT_IDX$K TABLE
DR$SUP_TEXT_IDX$N TABLE
DR$SUP_TEXT_IDX$R TABLE
DR$SUP_TEXT_IDX$U TABLE
FWEEK_PSCAT_SALES_MV TABLE
PRODUCTS TABLE
PROFITS VIEW
PROMOTIONS TABLE
SALES TABLE
SALES_TRANSACTIONS_EXT TABLE
SUPPLEMENTARY_DEMOGRAPHICS TABLE
TIMES TABLE
18 rows selected.

参考資料

https://github.com/oracle/db-sample-schemas/releases/tag/v12.2.0.1

https://github.com/oracle/db-sample-schemas/releases/tag/v12.2.0.1

https://github.com/oracle/db-sample-schemas/releases/tag/v12.2.0.1

Docker上にOracle Database 12.2を構築(Part2)

概要

前回記事で構築した環境の状況を確認しました。

構成確認

--Dockerホスト側
[root@Marshall oradata]# pwd
/mnt/oradata
[root@Marshall oradata]# ll
合計 0
drwxr-xr-x 3 54321 54321 18 5月 4 16:27 dbconfig
drwxr-x--- 4 54321 54321 227 5月 4 16:23 orcl
[root@Marshall oradata]# ls -la dbconfig/orcl/
合計 24
drwxr-xr-x 2 54321 54321 117 5月 4 16:27 .
drwxr-xr-x 3 54321 54321 18 5月 4 16:27 ..
-rw-r--r-- 1 54321 54321 234 5月 4 16:20 listener.ora
-rw-r----- 1 54321 54321 3584 5月 5 15:13 orapworcl
-rw-r--r-- 1 54321 54321 786 5月 4 16:27 oratab
-rw-r----- 1 54321 54321 2560 5月 5 15:00 spfileorcl.ora
-rw-r--r-- 1 54321 54321 53 5月 4 16:20 sqlnet.ora
-rw-r--r-- 1 54321 54321 183 5月 4 16:27 tnsnames.ora
[root@Marshall oradata]# ls -la orcl/
合計 2207172
drwxr-x--- 4 54321 54321 227 5月 4 16:23 .
drwxrwxrwx 4 oracle docker 34 5月 4 16:27 ..
-rw-r----- 1 54321 54321 18726912 5月 5 15:24 control01.ctl
-rw-r----- 1 54321 54321 18726912 5月 4 17:08 control02.ctl
drwxr-x--- 2 54321 54321 104 5月 4 16:27 pdb1
drwxr-x--- 2 54321 54321 111 5月 4 16:23 pdbseed
-rw-r----- 1 54321 54321 209715712 5月 5 15:00 redo01.log
-rw-r----- 1 54321 54321 209715712 5月 5 15:24 redo02.log
-rw-r----- 1 54321 54321 209715712 5月 5 08:08 redo03.log
-rw-r----- 1 54321 54321 545267712 5月 5 15:24 sysaux01.dbf
-rw-r----- 1 54321 54321 849354752 5月 5 15:19 system01.dbf
-rw-r----- 1 54321 54321 137371648 5月 5 15:00 temp01.dbf
-rw-r----- 1 54321 54321 68165632 5月 5 15:24 undotbs01.dbf
-rw-r----- 1 54321 54321 5251072 5月 5 15:05 users01.dbf
 --コンテナ側
[oracle@aaeca05e3663 oradata]$ pwd
/opt/oracle/oradata
[oracle@aaeca05e3663 oradata]$ ll
total 0
drwxr-xr-x 3 oracle oinstall 18 May 4 07:27 dbconfig
drwxr-x--- 4 oracle oinstall 227 May 4 07:23 orcl
[oracle@aaeca05e3663 oradata]$ ls -la dbconfig/orcl/
total 24
drwxr-xr-x 2 oracle oinstall 117 May 4 07:27 .
drwxr-xr-x 3 oracle oinstall 18 May 4 07:27 ..
-rw-r--r-- 1 oracle oinstall 234 May 4 07:20 listener.ora
-rw-r----- 1 oracle oinstall 3584 May 5 06:13 orapworcl
-rw-r--r-- 1 oracle oinstall 786 May 4 07:27 oratab
-rw-r----- 1 oracle oinstall 2560 May 5 06:00 spfileorcl.ora
-rw-r--r-- 1 oracle oinstall 53 May 4 07:20 sqlnet.ora
-rw-r--r-- 1 oracle oinstall 183 May 4 07:27 tnsnames.ora
[oracle@aaeca05e3663 oradata]$ ls -la orcl/
total 2207172
drwxr-x--- 4 oracle oinstall 227 May 4 07:23 .
drwxrwxrwx 4 1000 983 34 May 4 07:27 ..
-rw-r----- 1 oracle oinstall 18726912 May 5 06:25 control01.ctl
-rw-r----- 1 oracle oinstall 18726912 May 4 08:08 control02.ctl
drwxr-x--- 2 oracle oinstall 104 May 4 07:27 pdb1
drwxr-x--- 2 oracle oinstall 111 May 4 07:23 pdbseed
-rw-r----- 1 oracle oinstall 209715712 May 5 06:00 redo01.log
-rw-r----- 1 oracle oinstall 209715712 May 5 06:25 redo02.log
-rw-r----- 1 oracle oinstall 209715712 May 4 23:08 redo03.log
-rw-r----- 1 oracle oinstall 545267712 May 5 06:25 sysaux01.dbf
-rw-r----- 1 oracle oinstall 849354752 May 5 06:19 system01.dbf
-rw-r----- 1 oracle oinstall 137371648 May 5 06:00 temp01.dbf
-rw-r----- 1 oracle oinstall 68165632 May 5 06:25 undotbs01.dbf
-rw-r----- 1 oracle oinstall 5251072 May 5 06:05 users01.dbf

管理者ユーザーのパスワード変更

---コンテナ側で実行(setPassword.shの引数に任意のパスワードを指定)
oracle@aaeca05e3663 ~]$ pwd
/home/oracle
[oracle@aaeca05e3663 ~]$ ll
total 0
lrwxrwxrwx 1 oracle oinstall 26 May 4 07:00 setPassword.sh -> /opt/oracle/setPassword.sh
[oracle@aaeca05e3663 ~]$ ll /opt/oracle
total 40
drwxr-xr-x 3 oracle oinstall 18 May 4 08:55 admin
-rwxr-xr-x 1 oracle dba 1148 May 3 20:45 checkDBStatus.sh
drwxr-xr-x 2 oracle oinstall 6 May 4 07:00 checkpoints
-rwxr-xr-x 1 oracle dba 2953 May 3 20:45 createDB.sh
-rw-rw-r-- 1 oracle dba 9203 May 3 20:45 dbca.rsp.tmpl
drwxrwxr-x 1 oracle oinstall 34 May 4 07:00 diag
drwxrwx--- 1 oracle dba 89 May 4 07:00 oraInventory
drwxrwxrwx 4 1000 983 34 May 4 07:27 oradata
drwxr-xr-x 1 oracle oinstall 22 May 4 06:55 product
-rwxr-xr-x 1 oracle dba 6140 May 3 20:45 runOracle.sh
-rwxr-xr-x 1 oracle dba 1015 May 3 20:45 runUserScripts.sh
drwxr-xr-x 4 oracle dba 34 May 4 06:48 scripts
-rwxr-xr-x 1 oracle dba 758 May 3 20:45 setPassword.sh
-rwxr-xr-x 1 oracle dba 678 May 3 20:45 startDB.sh
[oracle@aaeca05e3663]$ ./setPassword.sh XXXXXXX
The Oracle base remains unchanged with value /opt/oracle
SQL*Plus: Release 12.2.0.1.0 Production on Sat May 5 06:13:55 2018
Copyright (c) 1982, 2016, Oracle. All rights reserved.
Connected to:
Oracle Database 12c Enterprise Edition Release 12.2.0.1.0 - 64bit Production
SQL>
User altered.
SQL>
User altered.
SQL>
Session altered.
SQL>
User altered.
SQL> Disconnected from Oracle Database 12c Enterprise Edition Release 12.2.0.1.0 - 64bit Production

インスタンス停止/起動

▽インスタンス停止
[oracle@aaeca05e3663 ~]$ sqlplus / as sysdba
SQL*Plus: Release 12.2.0.1.0 Production on Sat May 5 06:29:02 2018
Copyright (c) 1982, 2016, Oracle. All rights reserved.
Connected to:
Oracle Database 12c Enterprise Edition Release 12.2.0.1.0 - 64bit Production
SQL> shu immediate
Database closed.
Database dismounted.
ORACLE instance shut down.
--アラートログ
:
2018-05-05T06:29:15.753610+00:00
ARCH: Archival disabled due to shutdown: 1089
Shutting down archive processes
Archiving is disabled
JIT: pid 2627 requesting stop
2018-05-05T06:29:15.822213+00:00
Stopping background process VKTM
2018-05-05T06:29:24.255962+00:00
Instance shutdown complete (OS id: 2627)
 ▽インスタンス起動
SQL> startup
ORACLE instance started.
Total System Global Area 1610612736 bytes
Fixed Size 8793304 bytes
Variable Size 520094504 bytes
Database Buffers 1073741824 bytes
Redo Buffers 7983104 bytes
Database mounted.
Database opened.
--アラートログ
:
2018-05-05T06:30:45.105541+00:00
Pluggable database PDB1 opened read write
Starting background process CJQ0
2018-05-05T06:30:45.269758+00:00
CJQ0 started with pid=40, OS id=2906
Completed: ALTER DATABASE OPEN

初期化パラメータ

SQL> show parameter
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
DBFIPS_140 boolean FALSE
O7_DICTIONARY_ACCESSIBILITY boolean FALSE
active_instance_count integer
allow_global_dblinks boolean FALSE
allow_group_access_to_sga boolean FALSE
approx_for_aggregation boolean FALSE
approx_for_count_distinct boolean FALSE
approx_for_percentile string none
aq_tm_processes integer 1
archive_lag_target integer 0
asm_diskgroups string
asm_diskstring string
asm_io_processes integer 20
asm_power_limit integer 1
asm_preferred_read_failure_groups string
audit_file_dest string /opt/oracle/admin/orcl/adump
audit_sys_operations boolean FALSE
audit_syslog_level string
audit_trail string NONE
autotask_max_active_pdbs integer 2
awr_pdb_autoflush_enabled boolean FALSE
awr_snapshot_time_offset integer 0
background_core_dump string partial
background_dump_dest string /opt/oracle/product/12.2.0.1/dbhome_1/rdbms/log
backup_tape_io_slaves boolean FALSE
bitmap_merge_area_size integer 1048576
blank_trimming boolean FALSE
buffer_pool_keep string
buffer_pool_recycle string
cdb_cluster boolean FALSE
cdb_cluster_name string orcl
cell_offload_compaction string ADAPTIVE
cell_offload_decryption boolean TRUE
cell_offload_parameters string
cell_offload_plan_display string AUTO
cell_offload_processing boolean TRUE
cell_offloadgroup_name string
circuits integer
client_result_cache_lag big integer 3000
client_result_cache_size big integer 0
clonedb boolean FALSE
clonedb_dir string
cluster_database boolean FALSE
cluster_database_instances integer 1
cluster_interconnects string
commit_logging string
commit_point_strength integer 1
commit_wait string
commit_write string
common_user_prefix string C##
compatible string 12.2.0
containers_parallel_degree integer 65535
control_file_record_keep_time integer 7
control_files string /opt/oracle/oradata/orcl/control01.ctl
control_management_pack_access string DIAGNOSTIC+TUNING
core_dump_dest string /opt/oracle/diag/rdbms/orcl/orcl/cdump
cpu_count integer 4
create_bitmap_area_size integer 8388608
create_stored_outlines string
cursor_bind_capture_destination string memory+disk
cursor_invalidation string IMMEDIATE
cursor_sharing string EXACT
cursor_space_for_time boolean FALSE
data_guard_sync_latency integer 0
data_transfer_cache_size big integer 0
db_16k_cache_size big integer 0
db_2k_cache_size big integer 0
db_32k_cache_size big integer 0
db_4k_cache_size big integer 0
db_8k_cache_size big integer 0
db_big_table_cache_percent_target string 0
db_block_buffers integer 0
db_block_checking string FALSE
db_block_checksum string TYPICAL
db_block_size integer 8192
db_cache_advice string ON
db_cache_size big integer 0
db_create_file_dest string
db_create_online_log_dest_1 string
db_create_online_log_dest_2 string
db_create_online_log_dest_3 string
db_create_online_log_dest_4 string
db_create_online_log_dest_5 string
db_domain string
db_file_multiblock_read_count integer 128
db_file_name_convert string
db_files integer 200
db_flash_cache_file string
db_flash_cache_size big integer 0
db_flashback_retention_target integer 1440
db_index_compression_inheritance string NONE
db_keep_cache_size big integer 0
db_lost_write_protect string NONE
db_name string orcl
db_performance_profile string
db_recovery_file_dest string
db_recovery_file_dest_size big integer 0
db_recycle_cache_size big integer 0
db_securefile string PREFERRED
db_ultra_safe string OFF
db_unique_name string orcl
db_unrecoverable_scn_tracking boolean TRUE
db_writer_processes integer 1
dbwr_io_slaves integer 0
ddl_lock_timeout integer 0
default_sharing string metadata
deferred_segment_creation boolean TRUE
dg_broker_config_file1 string /opt/oracle/product/12.2.0.1/dbhome_1/dbs/dr1orcl.dat
dg_broker_config_file2 string /opt/oracle/product/12.2.0.1/dbhome_1/dbs/dr2orcl.dat
dg_broker_start boolean FALSE
diagnostic_dest string /opt/oracle
disable_pdb_feature big integer 0
disk_asynch_io boolean TRUE
dispatchers string (PROTOCOL=TCP) (SERVICE=orclXDB)
distributed_lock_timeout integer 60
dml_locks integer 2216
dnfs_batch_size integer 4096
dst_upgrade_insert_conv boolean TRUE
enable_automatic_maintenance_pdb boolean TRUE
enable_ddl_logging boolean FALSE
enable_dnfs_dispatcher boolean FALSE
enable_goldengate_replication boolean FALSE
enable_pluggable_database boolean TRUE
enabled_PDBs_on_standby string *
encrypt_new_tablespaces string CLOUD_ONLY
event string
exafusion_enabled integer 1
external_keystore_credential_locatio string
n
fal_client string
fal_server string
fast_start_io_target integer 0
fast_start_mttr_target integer 0
fast_start_parallel_rollback string LOW
file_mapping boolean FALSE
fileio_network_adapters string
filesystemio_options string none
fixed_date string
gcs_server_processes integer 0
global_names boolean FALSE
global_txn_processes integer 1
hash_area_size integer 131072
heat_map string OFF
hi_shared_memory_address integer 0
hs_autoregister boolean TRUE
ifile file
inmemory_adg_enabled boolean TRUE
inmemory_clause_default string
inmemory_expressions_usage string ENABLE
inmemory_force string DEFAULT
inmemory_max_populate_servers integer 0
inmemory_query string ENABLE
inmemory_size big integer 0
inmemory_trickle_repopulate_servers_ integer 1
percent
inmemory_virtual_columns string MANUAL
instance_abort_delay_time integer 0
instance_groups string
instance_mode string READ-WRITE
instance_name string orcl
instance_number integer 0
instance_type string RDBMS
instant_restore boolean FALSE
java_jit_enabled boolean TRUE
java_max_sessionspace_size integer 0
java_pool_size big integer 0
java_restrict string none
java_soft_sessionspace_limit integer 0
job_queue_processes integer 4000
large_pool_size big integer 0
ldap_directory_access string NONE
ldap_directory_sysauth string no
license_max_sessions integer 0
license_max_users integer 0
license_sessions_warning integer 0
listener_networks string
local_listener string
lock_name_space string
lock_sga boolean FALSE
log_archive_config string
log_archive_dest string
log_archive_dest_1 string
log_archive_dest_10 string
log_archive_dest_11 string
log_archive_dest_12 string
log_archive_dest_13 string
log_archive_dest_14 string
log_archive_dest_15 string
log_archive_dest_16 string
log_archive_dest_17 string
log_archive_dest_18 string
log_archive_dest_19 string
log_archive_dest_2 string
log_archive_dest_20 string
log_archive_dest_21 string
log_archive_dest_22 string
log_archive_dest_23 string
log_archive_dest_24 string
log_archive_dest_25 string
log_archive_dest_26 string
log_archive_dest_27 string
log_archive_dest_28 string
log_archive_dest_29 string
log_archive_dest_3 string
log_archive_dest_30 string
log_archive_dest_31 string
log_archive_dest_4 string
log_archive_dest_5 string
log_archive_dest_6 string
log_archive_dest_7 string
log_archive_dest_8 string
log_archive_dest_9 string
log_archive_dest_state_1 string enable
log_archive_dest_state_10 string enable
log_archive_dest_state_11 string enable
log_archive_dest_state_12 string enable
log_archive_dest_state_13 string enable
log_archive_dest_state_14 string enable
log_archive_dest_state_15 string enable
log_archive_dest_state_16 string enable
log_archive_dest_state_17 string enable
log_archive_dest_state_18 string enable
log_archive_dest_state_19 string enable
log_archive_dest_state_2 string enable
log_archive_dest_state_20 string enable
log_archive_dest_state_21 string enable
log_archive_dest_state_22 string enable
log_archive_dest_state_23 string enable
log_archive_dest_state_24 string enable
log_archive_dest_state_25 string enable
log_archive_dest_state_26 string enable
log_archive_dest_state_27 string enable
log_archive_dest_state_28 string enable
log_archive_dest_state_29 string enable
log_archive_dest_state_3 string enable
log_archive_dest_state_30 string enable
log_archive_dest_state_31 string enable
log_archive_dest_state_4 string enable
log_archive_dest_state_5 string enable
log_archive_dest_state_6 string enable
log_archive_dest_state_7 string enable
log_archive_dest_state_8 string enable
log_archive_dest_state_9 string enable
log_archive_duplex_dest string
log_archive_format string %t_%s_%r.dbf
log_archive_max_processes integer 4
log_archive_min_succeed_dest integer 1
log_archive_start boolean FALSE
log_archive_trace integer 0
log_buffer big integer 7456K
log_checkpoint_interval integer 0
log_checkpoint_timeout integer 1800
log_checkpoints_to_alert boolean FALSE
log_file_name_convert string
long_module_action boolean TRUE
max_datapump_jobs_per_pdb integer 100
max_dispatchers integer
max_dump_file_size string unlimited
max_idle_time integer 0
max_iops integer 0
max_mbps integer 0
max_pdbs integer 4098
max_shared_servers integer
max_string_size string STANDARD
memory_max_target big integer 0
memory_target big integer 0
nls_calendar string
nls_comp string BINARY
nls_currency string
nls_date_format string
nls_date_language string
nls_dual_currency string
nls_iso_currency string
nls_language string AMERICAN
nls_length_semantics string BYTE
nls_nchar_conv_excp string FALSE
nls_numeric_characters string
nls_sort string
nls_territory string AMERICA
nls_time_format string
nls_time_tz_format string
nls_timestamp_format string
nls_timestamp_tz_format string
noncdb_compatible boolean FALSE
object_cache_max_size_percent integer 10
object_cache_optimal_size integer 10240000
ofs_threads integer 4
olap_page_pool_size big integer 0
one_step_plugin_for_pdb_with_tde boolean FALSE
open_cursors integer 300
open_links integer 4
open_links_per_instance integer 4
optimizer_adaptive_plans boolean TRUE
optimizer_adaptive_reporting_only boolean FALSE
optimizer_adaptive_statistics boolean FALSE
optimizer_capture_sql_plan_baselines boolean FALSE
optimizer_dynamic_sampling integer 2
optimizer_features_enable string 12.2.0.1
optimizer_index_caching integer 0
optimizer_index_cost_adj integer 100
optimizer_inmemory_aware boolean TRUE
optimizer_mode string ALL_ROWS
optimizer_secure_view_merging boolean TRUE
optimizer_use_invisible_indexes boolean FALSE
optimizer_use_pending_statistics boolean FALSE
optimizer_use_sql_plan_baselines boolean TRUE
os_authent_prefix string ops$
os_roles boolean FALSE
outbound_dblink_protocols string ALL
parallel_adaptive_multi_user boolean FALSE
parallel_degree_limit string CPU
parallel_degree_policy string MANUAL
parallel_execution_message_size integer 16384
parallel_force_local boolean FALSE
parallel_instance_group string
parallel_max_servers integer 160
parallel_min_percent integer 0
parallel_min_servers integer 16
parallel_min_time_threshold string AUTO
parallel_servers_target integer 64
parallel_threads_per_cpu integer 2
pdb_file_name_convert string
pdb_lockdown string
pdb_os_credential string
permit_92_wrap_format boolean TRUE
pga_aggregate_limit big integer 2G
pga_aggregate_target big integer 512M
plscope_settings string IDENTIFIERS:NONE
plsql_ccflags string
plsql_code_type string INTERPRETED
plsql_debug boolean FALSE
plsql_optimize_level integer 2
plsql_v2_compatibility boolean FALSE
plsql_warnings string DISABLE:ALL
pre_page_sga boolean TRUE
processes integer 320
processor_group_name string
query_rewrite_enabled string TRUE
query_rewrite_integrity string enforced
rdbms_server_dn string
read_only_open_delayed boolean FALSE
recovery_parallelism integer 0
recyclebin string on
redo_transport_user string
remote_dependencies_mode string TIMESTAMP
remote_listener string
remote_login_passwordfile string EXCLUSIVE
remote_os_authent boolean FALSE
remote_os_roles boolean FALSE
remote_recovery_file_dest string
replication_dependency_tracking boolean TRUE
resource_limit boolean TRUE
resource_manage_goldengate boolean FALSE
resource_manager_cpu_allocation integer 4
resource_manager_plan string SCHEDULER[0x4AC8]:DEFAULT_MAINTENANCE_PLAN
result_cache_max_result integer 5
result_cache_max_size big integer 7872K
result_cache_mode string MANUAL
result_cache_remote_expiration integer 0
resumable_timeout integer 0
rollback_segments string
sec_case_sensitive_logon boolean TRUE
sec_max_failed_login_attempts integer 3
sec_protocol_error_further_action string (DROP,3)
sec_protocol_error_trace_action string TRACE
sec_return_server_release_banner boolean FALSE
serial_reuse string disable
service_names string orcl
session_cached_cursors integer 50
session_max_open_files integer 10
sessions integer 504
sga_max_size big integer 1536M
sga_min_size big integer 0
sga_target big integer 1536M
shadow_core_dump string partial
shared_memory_address integer 0
shared_pool_reserved_size big integer 16M
shared_pool_size big integer 0
shared_server_sessions integer
shared_servers integer 1
shrd_dupl_table_refresh_rate integer 60
skip_unusable_indexes boolean TRUE
smtp_out_server string
sort_area_retained_size integer 0
sort_area_size integer 65536
spatial_vector_acceleration boolean FALSE
spfile string /opt/oracle/product/12.2.0.1/dbhome_1/dbs/spfileorcl.ora
sql92_security boolean TRUE
sql_trace boolean FALSE
sqltune_category string DEFAULT
standby_archive_dest string ?#/dbs/arch
standby_db_preserve_states string NONE
standby_file_management string MANUAL
star_transformation_enabled string FALSE
statistics_level string TYPICAL
streams_pool_size big integer 0
tape_asynch_io boolean TRUE
target_pdbs integer 3
temp_undo_enabled boolean FALSE
thread integer 0
threaded_execution boolean FALSE
timed_os_statistics integer 0
timed_statistics boolean TRUE
trace_enabled boolean TRUE
tracefile_identifier string
transactions integer 554
transactions_per_rollback_segment integer 5
undo_management string AUTO
undo_retention integer 900
undo_tablespace string UNDOTBS1
unified_audit_sga_queue_size integer 1048576
uniform_log_timestamp_format boolean TRUE
use_dedicated_broker boolean FALSE
use_large_pages string TRUE
user_dump_dest string /opt/oracle/product/12.2.0.1/dbhome_1/rdbms/log
utl_file_dir string
workarea_size_policy string AUTO
xml_db_events string enable

スポンサーリンク