2020-01-01から1年間の記事一覧
概要 バインド変数を使用することで、大きく以下のようなメリットが得られます。 * 共有プールの節約 * SQLインジェクション対策になる バインド変数の関連箇所 バインド変数の使用 バインド変数の問題点 バインドピークとその問題点
概要 ハードパースとソフトパースについての解説 ハードパース 様々な実行計画を生成し、最適な実行計画を選択 統計情報が収集済みのとき(ソフトパース) * 統計情報を利用 * 統計情報:表、列、索引、システム 統計がない時or古い時(ハードパース) * 動…
概要 SQL文を実行した際のメモリ上の動作を説明 SQL実行時のメモリ上の動作 SQL文を発行した後、メモリ上では大きく以下のような流れとなる 1. SQLリクエストを受信 ↓ 2. カーソルのオープン ↓ 3. 実行計画の生成/再利用 ↓ 4. SQL文の実行 ↓ 5. カーソルのク…
概要 SQLや実行計画を解析する際の最低限知っておくべきと考える情報を記載します。 SQL_ID(SQL識別子) 意味 Oracleは実行されたSQL文を13桁の「文字列」で管理していますが、この文字列のことをSQL識別子(SQL_ID)と呼びます。 特徴 SQL識別子(SQL_ID)はSQL…
主な待機イベント一覧 Category Wait Class Event RAC Cluster gc cr/current (multi block) request Cluster gc cr/current grant 2-way Cluster gc cr/current block 2-way/3-way Cluster gc buffer busy acquire/release インターコネクト RACにはインタ…
主な待機イベント一覧 Category Wait Class Event I/O User I/O db file sequential read User I/O db file scattered read User I/O direct path read Commit log file sync System I/O db file parallel write Memory Configuration free buffer waits N/W…
待機イベント 待機イベントは、プロセスがCPUを使用できず、待機させられるイベントのこと。 待機の要因に基づき細分化されているため、この点を利用してパフォーマンス分析・チューニングの実施が可能 AWR/StatspackのDB CPUと待機イベントの関係性は以下の…
Oracle ヒント句 ヒント句 オプティマイザが適切な実行計画を選択してくれない、または不具合の影響等で性能要件を満たせない実行計画になることを抑止・安定化させる。 ただし、ヒントは融通が利かないため最終手段と考えるべき。 理由としてヒントで実行計…
SMCO スペース管理コーディネータープロセス(SMCO)は、事前のスペース割り当てやスペースの再利用など、さまざまなスペース管理タスクの実行をスケジュールするバックグラウンドプロセス。 SMCOは動的にスペース管理スレーブプロセス(Wnnn)を生成して、…
FBDA フラッシュバックデータアーカイバープロセス(FBDA)は、テーブルの存続期間中のトランザクションの変更を追跡および保存する機能を提供するバックグラウンドプロセス。 このようにして、テーブルをフラッシュバックして元の状態に戻すことができる。 …
RVWR リカバリライタープロセス(RVWR)は、データベース全体またはプラガブルデータベースをフラッシュバックするために使用されるバックグラウンドプロセス。 つまり、必要なフラッシュバックログがあれば、データベースの現在の状態から過去の時間までの…
CJQ0 ジョブキューコーディネータープロセス(CJQ0)は、データディクショナリから実行する必要があるジョブを選択し、ジョブキュースレーブプロセス(Jnnn)を起動してジョブを実行するバックグラウンドプロセス。 CJQ0は、Oracle Schedulerによって必要に…
ARCn アーカイバプロセス(ARCn)は、データベースがARCHIVELOGモードであり、自動アーカイブが有効な場合にのみ存在するバックグラウンドプロセス。 この場合、ARCnはオンラインREDOログファイルを自動的にアーカイブする。 ログライタープロセス(LGWR)は…
LGWR ログライタープロセス(LGWR)は、REDOログエントリをREDOログファイルに順次書き込むバックグラウンドプロセス。 REDOログエントリは、システムグローバルエリア(SGA)のREDOログバッファに生成される。 データベースに多重化REDOログがある場合、LGW…
RECO リカバリー・プロセス(RECO)は、分散データベースのネットワークまたはシステムの障害のために保留中の分散トランザクションを解決するバックグラウンド・プロセス。 RECOは、スレッドまたはオペレーティングシステムプロセスとして実行できる。
管理性監視プロセス(MMON)および管理性監視ライトプロセス(MMNL)は、自動ワークロードリポジトリ(AWR)に関連するタスクを実行するバックグラウンドプロセス。 AWRは、システム、セッション、個々のSQLステートメント、セグメント、およびサービスの累…
CKPT チェックポイントプロセス(CKPT)は、特定の時間にデータベースライタープロセス(DBWn)にメッセージを送信してチェックポイント要求を開始し、ダーティバッファーの書き込みを開始するバックグラウンドプロセス。 個々のチェックポイント要求が完了…
DBWn データベースライタープロセス(DBWn)は、主にデータブロックをディスクに書き込むバックグラウンドプロセス。 また、チェックポイント、ファイルオープン同期、ブロック書き込みレコードのロギングも処理する。 フラッシュキャッシュが構成されている…
SMON システムモニタープロセス(SMON)は、以下を含む多くのデータベース保守タスクを実行するバックグラウンドプロセス。 ・一時テーブルスペースのメタデータを作成および管理し、孤立した一時セグメントが使用していたスペースを再利用する。 ・UNDO領域…
LREG リスナー登録プロセス(LREG)は、インスタンス、サービス、ハンドラー、およびエンドポイントについてリスナーに通知するバックグラウンドプロセス。 LREGは、スレッドまたはオペレーティングシステムプロセスとして実行できる。 データベースインスタ…
PMAN プロセスマネージャープロセス(PMAN)は、必要に応じて以下を監視、生成、停止するバックグラウンドプロセス。 ・ディスパッチャーと共有サーバープロセス ・データベース常駐接続プールの接続ブローカーとプールされたサーバープロセス ・ジョブキュ…
PMON プロセスモニタープロセス(PMON)は、すべてのプロセスを定期的にスキャンして、異常終了したプロセスを見つけるバックグラウンドプロセス。 その後、PMONは、クリーンアップメインプロセス(CLMN)とクリーンアップスレーブプロセススレーブ(CLnn)…
バックアップファイル データベースのバックアップは、物理的または論理的のいずれかとなる。 ・物理バックアップは、物理データベースファイルのコピー。 物理バックアップは、Recovery Manager(RMAN)またはオペレーティングシステムユーティリティを使用…
Automatic Diagnostic Repository (ADR) 自動診断リポジトリ(ADR)は、データベース診断データ用のシステム全体のトレースおよびロギングの中央リポジトリ。 次のアイテムが含まれる。 バックグラウンドトレースファイル: 各データベースバックグラウンド…
アプリケーションコンテナ アプリケーションコンテナは、ユーザーが作成したオプションのCDBコンポーネントであり、アプリケーションPDBのデータとメタデータを格納する。 CDBには0個以上のアプリケーションコンテナを含めることができる。 アプリケーション…
データベースシステムファイル 次のデータベースシステムファイルは、Oracleデータベースの操作中に使用され、データベースサーバーに常駐する。 ※データファイルはデータベースコンテナーに属する物理ファイル 制御ファイル: 制御ファイルは、データファイ…
データファイル マルチテナントコンテナーデータベース(CDB)は、ユーザーデータとメタデータを格納する物理ファイルのセット。 メタデータは、データベースサーバーに関する構造/構成/制御情報で構成される。 CDB CDBは、1つのCDBルートコンテナー(ルート…
バッファキャッシュ データベースバッファキャッシュは、バッファキャッシュとも呼ばれ、データファイルから読み取られたデータブロックのコピーを格納するシステムグローバル領域(SGA)のメモリ領域。 バッファは、データベースのブロックサイズのメモリの…
ラージプール ラージプールは、データベース管理者が構成できるオプションのメモリ領域であり、次のものに大容量のメモリを割り当てることができる。 - ユーザーグローバルエリア(UGA):共有サーバーとOracle XAインターフェースのセッションメモリ(トラ…
共有プールはシステムグローバルエリア(SGA)のコンポーネントであり、さまざまなタイプのプログラムデータのキャッシュを担当する。 例えば、共有プールには、解析されたSQL、PL/SQLコード、システムパラメータ、およびデータディクショナリ情報が格納され…