2009-08-10から1日間の記事一覧

エクステント管理方法

・ローカル管理 →エクステントをビットマップで管理する ・ディクショナリ管理 →エクステントをディクショナリで管理する <※重要> 表領域について ・複数の表領域で構成している ・表領域は1つのデータベースに属する ・1つ以上のデータファイルで構成して…

セグメント

データセグメント・・・CREATE文で作成。DROP文で削除 索引セグメント・・・CREATE文で作成。DROP文で削除 一時セグメント・・・Oracleサーバが必要に応じて作成削除する LOBセグメント・・・表作成時にLOB型が指定されると作成、表削除で削除 <※重要> セ…

エクステント

<※重要> ・セグメントを作成すると1つのエクステントが割り当てられる ・データ量が増えると自動でエクステントがセグメントに追加される ・連続したデータブロックから構成される ・1つのエクステントは複数のデータファイルにまたがることはできない

データブロック

<※重要> ・OracleI/O最小単位 ・1つのデータブロックは1つのOSブロックから構成 ・標準ブロックサイズはDB_BLOCK_SIZE初期化パラメータで指定する ・標準ブロック以外に4つまで非標準のブロックサイズを使用できる ・最大サイズはOSのサイズによって異なる

ローカル管理

ローカル管理の利点 ・再帰的領域管理操作がない ・データディクショナリに対するほかの操作との競合がない ・空きエクステントを結合しなくて良い ・エクステントサイズをセグメントごとに設定しなくて良い ・セグメントマップの変更はUNDOを生成しない <…

表領域作成時の表領域タイプ

・永続・・・全てのセグメント。 ・一時・・・ソートや一時表の作成時使用 ・UNDO・・・UNDOセグメントのみ

表領域作成時のステータス(表領域の状態)

・読み取り/書き込み・・・読み取りと書き込みができる ・読み取り専用・・・DML操作の禁止。SYSTEM、SYSAUXは読み取り専用にできない ・オフライン・・・アクセスできなくなる。オプションは以下となる ・NORMAL・・・デフォルト。チェックポイントを実行す…

セグメント領域の管理

<※重要> 自動セグメント領域管理機能は表領域ごとに管理する

表領域に対する変更

以下の変更が可能 ・表領域の改名 ・ステータスの変更(読み取り/書き込み、読み取り専用ext) ・サイズの変更(データファイルの追加。リサイズ、自動拡張) ・ロギングの無効化 ・しきい値の変更

データベースの拡大

データベースのサイズ変更は以下二点がある ・新規表領域の作成 ・表領域のサイズ拡大

表領域のサイズ拡大

以下で表領域サイズを変更できる ・既存表領域へのデータファイル追加 ・既存データファイルのサイズ拡大 ・既存データファイルの動的拡張 既存表領域へのデータファイル追加 ALTER TABLESPACE 表領域名 ADD DATAFILE データファイル SIZE サイズ <|| 既存デ…

表領域の削除

表領域の削除は以下のようになる DROP TABLESPACE 表領域名 ・・・オプション オプションについて ・表領域のセグメントも削除する場合・・・INCLUDING CONTENTS ・参照整合性制約も削除する場合・・・CASCADE CONSTRAINTS ・OSに残るデータファイルも削除す…

OracleManagedFiles(OMF)

OMFはOracleサーバが自動的にデータベースファイルの作成や削除をする 以下初期化パラメータで指定する。どちらか片方だけを指定することもできる ・DB_CREATE_FILE_DEST・・・データファイルのデフォルト位置 ・DB_CREATE_ONLINE_LOG_DEST_n・・・制御、RED…

5章

<リスナーの停止> デフォルトの「LISTNER」以外を使用している場合以下2点が必要となる ・lsnrctlコマンドにリスナー名を含める ・SET CURRENT_LISTNERコマンドを使用する CURRENT_LISTNERはCURと略すことができる <動的静的サービス登録>・静的サービス…

ネーミングメソッド

どのネーミングメソッドを使用するかはクライアント側に配置した sqlnet.oraファイルのNAMES.DIRECTORY_PATHパラメータによってかわる <※重要> ・接続記述子はクライアント側のネーミングメソッドによって変わる ・使用可能なネーミングメソッドはsqlnet.o…

簡易接続ネーミング

簡易接続ネーミングを使用するには以下2点の情報が必要である ・TCP/IP接続が可能 ・OracleNetがインストールされていること <sqlnet.oraでは> EZCONNECTが指定されていること <構文> @ホスト名:[リスナーポート][/DBサービス名]※ホスト名とDBサービス…

ローカルネーミング

ローカルネーミングを使用するには以下2点の情報が必要である ・OracleNetがインストールされていること ・tnsnames.oraファイルの構成 <sqlnet.oraでは> TNSNAMESが指定されていること <構文> connect ユーザ名/パスワード@tnsnamesで指定した名前 ※EM…

フェイルオーバー

リスナーは複数DBに対してリスニングできる tnsnames.oraファイルにおいても複数のアドレスを指定できる。 複数指定した場合は以下の2つの構成ができる ・ロードバランス・・・アドレスをランダムに使用する ・フェイルオーバー・・・指定したアドレスが指定…

デフォルトドメイン

名前空間を複数持たせる際、デフォルトとなるドメイン名を定義しておくことでドメイン名を省略することができる デフォルトドメインはクライアント側のsqlnet.oraファイルにNAMES.DEFAULT_DOMAINパラメータで指定する sqlnet.ora NAMES.DEFAULT_DOMAIN = ド…

Oracle接続テスト

クライアント→リスナー間 ・プロンプトを使用 tnsping ネットサービス名[テスト回数] リスナー→DB ・EM、SQL*Plus、NetManagerを使用 <※重要> OracleNetManagerはローカルネーミングが使用できるかのテストをする <※重要> tnspingはネットサービス名を指…

共有サーバ構成アーキテクチャ

・ディスパッチャに接続するためにはリスナーへの接続が必要となる<※重要> ・要求キューはOracleインスタンスに一つ ・応答キューはディスパッチャに一つ

SGA、PGA、UGA

<※重要> ・UGAはカーソル領域とセッションメモリを含んでいる ・PGAにはスタック空間がある ・UGAの獲得するメモリは以下になる ・専用サーバ時はPGA内 ・共有サーバ時はSGAの共有プールまたはラージプール

共有サーバ構成

共有サーバ接続をするには事前に初期化パラメータで指定しておかなければならない <DISPATCHERS> ディスパッチャの初期数。MAX_DISPATCHERで指定した数まで手動で追加可能である。 <SHARED_SERVER> 共有サーバの初期数。足りなくなるとOracleサーバが自…

6章

<データベースブロックのブロックヘッダ> 以下の情報が管理されている ・セグメントのタイプ ・データブロックのアドレス ・表ディレクトリ ・行ディレクトリ ・トランザクションスロット <データブロック空き領域>・最初は連続している ・INSERT文で行…