DBA 診断機能

自己監視アーキテクチャ

dba_adviser1

ADDM

自動データベース診断モニター
Automatic Database Diagnostic Monitor (Diagnostic:診断)
AWRスナップショットに基づいてパフォーマンス診断を行い、結果をEMに表示する。

・一般:DBの状態
・ホストCPU:CPU使用率
DBインスタンスの使用時間、その他プロセスの使用時間
dba_adviser6

パフォーマンス
dba_adviser5

AWR

自動ワークロードリポジトリ Auto Workload Repository
AWRスナップショット(=ある時点のDBのパフォーマンス統計情報)を保存する場所。
SYSAUX表領域内のメモリ領域
↓ で設定する
サーバー > 統計管理 > 自動ワークロード・リポジトリ
dba_adviser4
スナップショット保存(日):8 ※規定
スナップショット間隔(分):60 ※規定
ベースライン
しきい値に用いる特定の時期のスナップショット

メトリック

=監視項目
MMONによって計算される。
ホーム > 関連リンク > すべてのメトリック
dba_adviser2

メトリックのしきい値

メトリックに対して設定する値
しきい値を超えた場合にDBの機能を損なう警告としてアラートを表示する。
ホーム > 関連リンク > メトリックとポリシー設定
dba_adviser3

アラート

しきい値 意味
警告しきい値 この段階で対応する事が望ましい
クリティカルしきい値 「警告しきい値」より深刻な状況である事を通知する為のしきい値

dba_adviser7

サポートワークベンチ

クリティティカルアラート表示

問題の詳細を表示
(以下、日本ではサービス外)
サービスリクエスト作成

Oracleサポートへアップロード

サービスリクエストを実行

インシデントをクローズ

ソフトウェアとサポート > サポート > サポート・ワークベンチ
dba_adviser10

アドバイザ

一覧

関連リンク > アドバイザ・セントラル
dba_adviser8

種類 アドバイザ名 機能
ADDM ADDM ADDM」参照
SQLアドバイザ SQLチューニングアドバイザ SQLチューニングアドバイザ」参照
SQLアクセスアドバイザ SQLアクセスアドバイザ」参照
メモリアドバイザ メモリーアドバイザ DBA インスタンス/メモリアドバイザ」参照
SGAアドバイザ
PGAアドバイザ
共有プールアドバイザ
バッファキャッシュアドバイザ
その他 セグメントアドバイザ セグメントアドバイザ」参照
UNDOアドバイザ UNDO表領域のサイズ設定アドバイスを提示
問い合わせ履歴から見たコスト、UNDO保存期間等から判定
平均リカバリ時間(MTTR) インスタンス障害の回復時間を提示
SQLアドバイザ

アドバイザ名 対象 DML文 機能 自動
SQLチューニングアドバイザ 全SQL文 推奨事項提示
SQL推奨事項実行
SQLプロファイル更新
索引作成
SQLアクセスアドバイザ 指定SQL文 索引作成
マテリアライズドビュー作成
SQLチューニングアドバイザ

dba_adviser13

14

・データソースに対するアドバイスを生成
・自動実行
・SQLプロファイルの作成/変更を自動実装可

データソース

ソース名 内容
トップアクティビティ 過去1時間で最高コストのSQL文
履歴SQL 過去24時間で最高コストのSQL文
SQLチューニングセット 全てのSQL文

SQLプロファイル
問い合わせ文固有の統計情報
問い合わせオプティマイザが問い合わせを実行する際にSQLプロファイルを利用する事で速度向上が見込める

SQLアクセスアドバイザ

・スキーマのチューニングアドバイスを提示
索引、マテリアライズドビューの作成等
・DML文も対象とする(≠SQLチューニングアドバイザ)
・ワークロードを指定して実行する
ワークロード
スキーマにアクセスするSQL文のセット
指定できるワークロードは以下
・現行および最近のSQLアクティビティ
・SQLリポジトリ
・ユーザー定義ワークロード(開発環境等)
データ移動 > アドバイザ・セントラル > SQLアドバイザ > SQLアクセス・アドバイザ
dba_adviser9

セグメントアドバイザ

・セグメントの断片化について改善アドバイスを提示
・セグメント増加に関する統計調査
実行すると表領域(セグメント)中の断片化された未使用領域が固められる。
→セグメントの圧縮

ソフトウェア管理

OracleMetaLink

パッチ ( = Oracleの不備、不具合に対する修正プログラム) を提供
(Oracleの有償サポート契約者のみ)

設定 > パッチ適用設定
dba_adviser11

クリティカルパッチ

ホーム > 一般 > すべてのプロパティ
dba_adviser12

DBA リカバリ

backup2

ステップ

ロールフォワード
REDOログファイルの内容を全て反映
・未コミットの命令も反映される
・UNDOデータも作成される
・一貫性バックアップの場合はコミット内容がデータファイルには反映されているので、
このステップだけでリカバリが完了する。

ロールバック
ロールバックした状態からUNDOデータを用いて未コミットの命令を戻す
→リカバリ完了

種類

リカバリ名 自動/手動 状態
インスタンスリカバリ
(クラッシュリカバリ:RAC環境)
自動実行(SMON)
(データベース異常停止時)
アーカイブREDOログファイル
を使用して
ロールフォワード/ロールバック
が自動で行われる
OPEN
メディアリカバリ 手動実行
(ディスク障害時等)
手動で、
・バックアップファイルをリストア
・ロールフォワード/ロールバック
を行う
MOUNT
フラッシュバック 手動実行
(ユーザー操作ミス時)
フラッシュバック」参照 OPEN

メディアリカバリオプション

オプション 内容 必要な
バックアップファイル
ON/OFF
ライン
ログ
モード
完全
リカバリ
バックアップ時点からのREDOログファイルの内容を全てリカバリ
(障害発生直前のCOMMIT状態まで)
データの損失無し
・制御ファイル
・データファイル
・アーカイブREDOログファイル
・REDOログファイル
・ON
・OFF
ARCHIVE
ログモード
Point-in-Time
リカバリ
(不完全リカバリ)

指定時刻より前のバックアップを利用して指定時刻までリカバリ
(指定時刻直前のCOMMIT状態まで)
指定時刻から後のデータは失われる
・OFF ARCHIVE
ログモード

リカバリ方法

リカバリ方法 内容
Oracle推奨リカバリ データリカバリアドバイザ」参照
ユーザー指示のリカバリ ユーザー指示のリカバリ」参照
フラッシュリカバリ フラッシュリカバリ」参照

データリカバリアドバイザ

=Oracle推奨リカバリ

【流れ】
DB:障害を検知

ADRへ障害情報格納

データリカバリアドバイザ実行

自動診断リポジトリ
ADR:Automatic Diagnostic Repository
障害情報を格納する為のDB外のディレクトリ構造

可用性 > バックアップ/リカバリ > 管理 > リカバリの実行
em_detareceveryadviser1

アドバイスが表示され、修復を実行できる
em_detareceveryadviser2

フラッシュリカバリ

バックアップ/リカバリ関連ファイルを自動管理する為の領域

種類

機能 内容
フラッシュバック問い合わせ 指定時刻における問い合わせ結果を取得する
フラッシュバックバージョン問い合わせ 指定期間内において、表の全行の履歴を取得する
フラッシュバックトランザクション問い合わせ 指定トランザクションによって実行された変更結果を取得する
フラッシュバック表 表を指定時点へ戻す
(1)フラッシュバック表関連の権限が必要
 「フラッシュバック表実行権限」参照
(2)対照の表の「行の移動」が有効
(3)UNDO表領域に変更前データがある
フラッシュバックドロップ 削除した表を戻す
・ゴミ箱(RECYCLEBIN)内のみ
・SYSTEM表領域内の表削除時はゴミ箱には入らない
フラッシュバックデータベース DBを指定時点まで戻す
(Point-in-Timeリカバリ)

設定

(1)NO ARCHIVELOGモード → ARCHIVELOGモード
(2)アーカイブREDOログの保存先をフラッシュリカバリ領域に
(3)フラッシュリカバリ領域の作成

可用性 > リカバリ設定
instance_recovery

(1)NO ARCHIVELOGモード → ARCHIVELOGモード
(2)アーカイブREDOログの保存先をフラッシュリカバリ領域に
アーカイブREDOログの保存先に「USE_DB_RECOVERY_FILE_DEST」を追加する
media_recovery

(3)フラッシュリカバリ領域の作成
flash_recovery

推奨サイズ
・データファイル完全バックアップ2つ分
・増分バックアップ分
・リカバリに必要なアーカイブREDOログファイル分

実行

フラッシュバック表
Oracle エンタプライズマネージャー使用方法③スキーマ/フラッシュバック表の実行」参照

ユーザー指示のリカバリ
可用性 > リカバリの実行 > ユーザー指示のリカバリ
flash_recovery2
「リカバリの有効範囲」を選択

論理リカバリ

impインポート

≠SQL*Plus
imp (ユーザ名)/(パスワード)
 インポートパス
 file=c:\test.dmp

 インポート元
 fromuser=(スキーマ名)

 インポート先
 touser=(スキーマ名)

 オブジェクト作成時のエラーを無視する
 ignore=y

datapumpインポート

≠SQL*Plus

データベース全体

impdp (ユーザ名)/(パスワード)

 指定ディレクトリからインポート
 directory=(ディレクトリ名)

 指定ファイルをインポート
 dumpfile=(ファイル名)

 DB全体をインポート

 full=y

 表領域

 tablespaces=(表領域名)

 スキーマ

 schemas=(スキーマ名)

 テーブル

 tables=(スキーマ名).(表名)

 データのみインポート
 content=DATA_ONLY

 上書き
 table_exsists_action=REPLACE

 異なるスキーマへ変更

 remap_schema=(エクスポートスキーマ名):(インポートスキーマ名)

 異なる表領域へ変更

 remap_tablespace=(エクスポート表領域名):(インポート表領域名)

DBA バックアップ

物理/論理バックアップ

一覧

バックアップ
方式
ログ
モード
リカバリ
方法
データ
復旧
バックアップ
直前まで 表単位 クローズ オープン 増分 DB単位 表領域単位 データ
ファイル
単位
表単位
Export × × × ×
DataPump × × × ×
OSコマンド 一貫性 NO ARCHIVE × × × × × × ×
ARCHIVE 完全
不完全 ×
非一貫性 ARCHIVE 完全 × × × ×
不完全 ×
RMAN 一貫性 NO ARCHIVE × × × × × × ×
ARCHIVE 完全
不完全 ×
非一貫性 ARCHIVE 完全 × × ×
不完全 ×
物理/論理 内容
物理バックアップ ファイル(データ含む)
論理バックアップ データのみ

物理バックアップ

データを含むファイルごとバックアップ~リカバリを行うバックアップ方法
同一データベースでのみリカバリ可能

backup1

バックアップ対象ファイル

以下の物理ファイルをコピーする事
・制御ファイル
・SPFile
・データファイル
・アーカイブREDOログファイル
(オンラインREDOログファイルのコピー)

タイプ

タイプ ON/OFF 条件 アーカイブ 必要ステップ リカバリタイプ
一貫性 オフ
ライン
インスタンス
停止
NO ARCHIVELOG
モード
ロールフォワード
ARCHIVELOG
モード
ロールフォワード
ロールバック
メディアリカバリ
非一貫性 オン
ライン
インスタンス
起動
ARCHIVELOG
モード
・ロールフォワード
・ロールバック
メディアリカバリ

インスタンスの停止操作を行うと、REDOログファイルにおけるCOMMIT内容がデータファイルに書き込まれる
=一貫性バックアップ時:REDOログファイル不要
障害発生時
・REDOログファイル:書込○
・データファイル:書込×
という状態になる可能性がある。
=非貫性バックアップ時:REDOログファイルを用いたロールバックが必要(メディアリカバリ)

保存ファイル形式

種類 内容
イメージコピー ファイルのコピー
バックアップセット RcoveryManagerによるコピー
使用ブロックのみをコピー

バックアップ設定:デバイス」で指定

EMサポート対象バックアップタイプ

対象 内容
データファイル 全体バックアップ データファイル全体
増分バックアップ 変更があったブロックのみ
差分増分バックアップ
累積増分バックアップ
増分更新バックアップ イメージコピー取得後、
増分バックアップ分をイメージコピーへ更新
リカバリ時間が短縮される
データベース 全体バックアップ DB全体

バックアップ実行時、「バックアップ・タイプの選択」で選択する。

差分増分バックアップ
em_zobun_bkup1

累積増分バックアップ
em_zobun_bkup2

バックアップ設定

可用性 > バックアップ/リカバリ > バックアップ設定 > デバイス
em_backup3
「ディスクバックアップの場所」を指定しない場合、フラッシュリカバリ領域にバックアップが保存される。

可用性 > バックアップ/リカバリ > バックアップ設定 > ポリシー
em_backup4

バックアップポリシー

設定項目 補足
各バックアップとデータベースの構成変更ごとに、制御ファイルおよびサーバー・パラメータ・ファイル(SPFILE)を自動的にバックアップ バックアップ、データディクショナリの更新の度に制御ファイル、SPFileがバックアップされる
自動バックアップ・ディスクの場所 未設定時、フラッシュリカバリ領域にバックアップが保存される
バックアップ済の、読取り専用およびオフラインのデータファイルなどの未変更ファイルをスキップして、データベース全体のバックアップを最適化
増分バックアップの高速化のためブロック変更トラッキングを有効化 増分バックアップ時に高速化される
リテンションポリシー

リテンション:保存

設定項目 補足
すべてのバックアップの保存 手動で削除しない限りバックアップは増え続ける
リカバリに必要なバックアップを、指定日数内の任意の時間に保存(Point-in-Timeリカバリ) 指定日数分のみバックアップ
メディアリカバリオプション
各データファイルについて、少なくとも指定回数の全体バックアップを保存 指定個数以前のバックアップは自動削除される

スケジュール

スケジュール バックアップ対象 バックアップ方法
カスタマイズ データベース全体 ・全体バックアップ
・増分バックアップ
表領域
データファイル
アーカイブログファイル
推奨 データベース全体 増分バックアップ
カスタマイズ・バックアップ実行

・バックアップ対象
・バックアップ方法
をカスタマイズできる

可用性 > バックアップ/リカバリ > 管理 > バックアップのスケジュール
em_backup5

バックアップ・タイプの選択
em_backup6
EMサポート対象バックアップタイプ」参照

em_backup7

em_backup8

em_backup9

推奨バックアップ実行

保存された増分バックアップを使用して増分更新バックアップがスケジュール実行される。
増分更新バックアップ
データファイルのイメージコピーロールフォワードするリカバリ方法

可用性 > バックアップ/リカバリ > 管理 > バックアップのスケジュール
em_backup5

em_backup10

em_backup11

em_backup12

em_backup13

可用性 > バックアップ/リカバリ > 管理 > バックアップのスケジュール
em_backup5

管理

メンテナンス

EMを使用してディスク(テープ)に保存したバックアップはRecoveryManagerリポジトリに格納される=バックアップレコード
バックアップレコードは「現行バックアップの管理」ページで管理できる。
可用性 > バックアップ/リカバリ > 管理 > 現行バックアップの管理
em_recovery_manager1
クロスチェック
バックアップレコードが物理ファイルとしてディスク(テープ)に存在するか?のチェック
チェックの結果はステータスが割り振られる
カタログ化
バックアップをRecoveryManagerリポジトリに登録する事
リカバリ領域内やOSコマンドによって取得したバックアップに対しては
「追加ファイルのカタログ化」によりカタログ化しておく事で、
リカバリ時に使用可能になる。

バックアップのステータス

ステータス RecoveryManagerのリポジトリに記憶されているバックアップについて
使用可能
AVAILABLE
ディスク(テープ)に「有る」状態
期限切れ
EXPIRED
ディスク(テープ)に「無い」状態
使用不可
UNAVAILABLE
保存先ディスク(テープ)が使用できない状態

論理バックアップ

ダンプファイルと呼ばれるデータのみのファイルを扱うバックアップ方法
異なるデータベース間でのバックアップ~リカバリが可能。
オブジェクト単位(表のみ等)でバックアップ対象を選択可能

エクスポート

expツール

≠SQL*Plus
exp testuser/testpass

 指定パスへ出力
 file=c:¥test.dmp

 DB全体をエクスポート

 full=y

 指定スキーマの全所有オブジェクトをエクスポート
 owner=testuser

 指定テーブルをエクスポート
 rows=y
 tables=(TEST_TBL, TEST_TBL2)

datapumpツール

=SQL*Plus
create or replace directory testtarget as 'C:\test';
GRANT READ, WRITE ON DIRECTORY testtarget TO (ユーザ名)
権限付与については「SQL DCL:ユーザー、ロール、権限/オブジェクト権限」参照
作成済みのディレクトリ情報については「Oracle データディクショナリ・ビュー/ALL_DIRECTORIES」参照

≠SQL*Plus

expdp (ユーザ名)/(パスワード)

 指定ディレクトリへ出力
 directory=(ディレクトリ名)

 指定ファイルにエクスポート
 dumpfile=(ファイル名)

 DB全体をエクスポート

 full=y

 表領域をエクスポート
 tablespaces=(表領域名)

 指定スキーマの全所有オブジェクトをエクスポート
 schemas=scott

 scottスキーマのEMPテーブルをエクスポート
 tables=scott.emp

インポート

DBA リカバリ/impインポート
DBA リカバリ/datapumpインポート
参照

ロード

SQL*Loader

・制御ファイル(emで作成。DBの制御ファイルとは別)
・データファイル(表データとなるテキストファイル)
を用意しておく事で行データを表に取り込める

データ移動 > 行データの移動 > ユーザー・ファイルからのデータのロード
em_load1

Oracle エンタプライズマネージャー使用方法②サーバー

一覧

em7

記憶域

表領域

table_space
Oracle 記憶域」参照

REDOログ・グループ

REDOロググループ

データベース構成

メモリー・アドバイザ

自動メモリ管理:有効
memory_adviser1

memory_adviser2

memory_adviser3

自動メモリ管理:無効
自動共有管理:有効
memory_adviser4

memory_adviser5

自動メモリ管理:無効
自動共有管理:無効
memory_adviser6

memory_adviser7

初期化パラメータ

データベース構成 → 初期化パラメータ
em16
「現行」タブ
現インスタンス使用中の値
「SPFile」タブ
SPFile登録値
「動的」項目
変更時、インスタンス再起動不要
「SPFileモードでの変更を現在実行中のインスタンスに適用する」チェック
SPFile、インスタンス両方に適用する
ALTER SYSTEM SET ~ SCOPE = BOTH に当たる処理
DBA インスタンス/パラメータファイル」参照

セキュリティ

ユーザー

em_user1

設定項目 内容
ユーザー名 大文字/小文字:区別しない
パスワード 大文字/小文字:区別する
プロファイル 適用するパスワードポリシーを包括したプロファイルを選択する
認証方式 ・パスワード
・外部
・グローバル
デフォルト表領域 ユーザーがオブジェクト(表等)作成時、
格納先表領域を指定しなかった場合の格納先表領域
一時表領域
表領域の割り当て制限 使用を許可する表領域の容量
規定は全表領域に対して「なし」
アカウントステータス ログイン:○=ロック解除
ログイン:×=ロック
パスワードステータス 期限切れ=次回ログイン時にパスワード変更を求められる
ロール EMでユーザーを作成するとCONNECTが自動で付与される
SQL DCL:ユーザー、ロール、権限」参照

em_user3

em_user2

em_user4
割り当て制限を解除しない場合、CREATE TABLE権限を割り当てても表を作成できない
一度、表領域に対して割り当てた領域について再度、割り当てを解除(割り当て制限:なし、値:0)した場合
最初に割り当てた領域分、全てのDML文を実行できる。

ロール

em_role1

em_role2

em_role4

em_role3

プロファイル

ユーザの動作を制限する為のルール
SQL DDL:プロファイル」参照
em_profile1

パスワードポリシー
em_profile2

DBA ファイル

データベースファイル

一覧

oracle_instance_list4

Oracleデータベースを構成する物理ファイル

データファイル
(.DBF)
表、索引等データを格納
制御ファイル
(.DAT)
DBの物理構造を格納
REDOログファイル
(.LOG)
変更情報を格納
データファイル


















名前  表領域   サイズ(M) 
{ORACLE_BASE}\oradata\{DB_UNIQUE_NAME}\SYSTEM01.DBF SYSTEM 680
{ORACLE_BASE}\oradata\{DB_UNIQUE_NAME}\SYSAUX01.DBF SYSAUX 440
{ORACLE_BASE}\oradata\{DB_UNIQUE_NAME}\UNDOTBS01.DBF UNDOTBS1 25
{ORACLE_BASE}\oradata\{DB_UNIQUE_NAME}\USERS01.DBF USERS 5
{ORACLE_BASE}\oradata\{DB_UNIQUE_NAME}\TEMP01.DBF TEMP 20

制御ファイル

データベースの物理構造を記録
・データベース名
REDOログファイル名、保存場所
・ログ順序番号
・チェックポイント情報
保存場所
<oracle_home>\oradata\\CONTROL~.CTL

REDOログファイル

データベースの更新履歴(=REDOログバッファ)の内容がLGWRプロセスによって書き込まれる。
REDOロググループ
・2グループ以上構成する必要あり
・1グループには1ファイル以上のREDOログファイルを配置する
LGWRプロセスは1ファイルが一杯になると別グループへ書き込み先を変更する(=ログスイッチ)

ログスイッチ
書込み先が変更される事

アーカイブログファイル
ログスイッチ時、リカバリ用に保存されるREDOログファイルのコピー
ARCnプロセスにより実行される。

保存場所
<oracle_home>\oradata\\REDO~.LOG

パラメータファイル

一覧

ファイル名 PFile SPFile
ファイル形式 テキスト形式 バイナリ形式
編集方法 エディタによる編集 ALTER SYSTEM SET ~
SCOPE={BOTH|SPFILE}
編集内容の反映タイミング 再起動時 即時
次セッション(遅延)
再起動時
ALTER SYSTEM の範囲 インスタンス
データベース
SPFile

サーバパラメータファイル
・初期化パラメータファイルより優先して読み込まれる
SPFileが読み込まれるとPFileは読み込まれない
・変更内容の反映タイミングは選択できる
 ・SCOPE=SPFILE
  SPFILEのみ変更:再起動後に反映される
 ・SCOPE=BOTH
  インスタンス&SPFILE変更:即時反映され、SPFileも書き変わるので再起動後も反映される
保存場所
$ORACLE_HOME/dbs (Linux)
$ORACLE_HOME/database (Windows)

PFile

テキスト初期化パラメータファイル
Oracle(SQL*Plus等)から変更する事はできない
保存場所
<oracle_home>\admin\<SID>\pfile\init.ora.~

初期化パラメータ

初期化パラメータ 意味
sga_max_size SGAの最大サイズ
・ALTER SYSTEM SET ~
・sga_tagert
で設定できる最大値
sga_target SGA全体の合計サイズ
「自動共有メモリ管理」設定時用
db_cache_size データベースバッファキャッシュのサイズ
shared_pool_size 共有プールのサイズ
large_pool_size ラージプールのサイズ
java_pool_size Javaプールのサイズ
stream_poolsize ストリームプールのサイズ

OracleNet

sqlnet.ora

プロファイル構成ファイル
保存場所
<oracle_home>\NETWORK\ADMIN\sqlnet.ora
DBA OracleNet」参照

tnsnames.ora

ローカルネーミングメソッド用構成ファイル
保存場所
<oracle_home>\NETWORK\ADMIN\tnsnames.ora
DBA OracleNet」参照

listener.ora

リスナー構成ファイル
保存場所
<oracle_home>\NETWORK\ADMIN\listener.ora
DBA OracleNet」参照

パスワードファイル

sysdba、sysoper権限ユーザがパスワード認証接続時に参照されるバイナリファイル。
他ユーザのパスワードはDB内に格納されているが、
上記ユーザはDB停止時に接続する為に外部ファイルを使用する(DBを起動させる為)
保存場所
・windowsの場合
<oracle_home>\database\PWD<SID>.ora
・unix系OSの場合
<oracle_home>/dbs/orapw<SID>
初期化パラメータ:REMOTE_LOGIN_PASSWORDFILE
EXCLUSIVEまたはSHARED
の設定の場合に使用される。
NONE:OS認証時
パスワードファイル作成(≠SQL*Plus)
ORAPWD FILE=<oracle_home>database\PWD.ora password=**** entries=10 force=y
orapwd file=<ファイル名> password=<パスワード> entries=<ユーザ数>
% orapwd file=orapwORCL password=oracle entries=10

ポート番号ファイル

各アプリのポート番号
ポート番号を変更した場合、ポート番号ファイルは更新されない。
インストール直後の状態のみを表す

保存場所
$ORACLE_HOME\install\portlist.ini

テンプレートファイル

DBA テンプレート」参照

Oracle エンタプライズマネージャー使用方法①一覧

エンタプライズマネージャーとは

Oracle Enterprise Manager Database Contorol
EMまたはOEMと呼ばれる
データベース全般のグラフィカル管理ツール
ブラウザから使用

以下を実行
・スキーマ・オブジェクト(表、ビュー、索引など)の作成
・ユーザー・セキュリティの管理
・データベースのメモリーとストレージの管理
・データベースのバックアップとリカバリ
・データのインポートとエクスポートなどの管理タスク
以下を表示
・データベースのパフォーマンス
・ステータス情報

プロセス起動/終了

コマンドプロンプト(Windowsの場合)等からクライアント(ユーザー)側にプロセスを起動する

コマンド 結果
emctl start dbconsole 開始
emctl stop dbconsole 終了
emctl status dbconsole 状態
→Oracle Enterprize Manager is not running.
→Oracle Enterprize Manager is running.

ユーザープロセスの起動に伴い、
Oracleサーバー側ではサーバープロセスが起動する。
dbconsoleプロセスが起動していればエンタプライズマネージャーは起動できる。
エンタプライズマネージャーにおいて対象DBの操作を行うには、
・インスタンスの起動
・リスナーの起動
が更に必要。

ログイン

URL
https://(ホスト名orIP):(ポート番号)/em/

使用ポート番号
DBA ファイル/ポート番号ファイル」参照

em1

デフォルトでEMにログインできるユーザーの一覧は「管理者」参照

ホーム

m2

em3

パフォーマンス

em4

em5

em6

サーバー

em7
Oracle エンタプライズマネージャー使用方法②サーバー」参照

スキーマ

em8

データ移動

em9

ソフトウェアとサポート

em10

設定

管理者

em13
スーパー管理者ユーザー

ユーザー名 接続モード
SYS SYSDBAモードのみ
SYSTEM Normalモードのみ
SYSMAN Normalモードのみ

SYSDBAユーザーを管理者として追加するとこの一覧に表示される。

ブラックアウト

em14

プリファレンス

優先資格証明

ジョブやタスク実行時、
・リスナー
・ホスト
・データベース
・エージェント
へのログインを自動で実行する為の設定情報
em11

em12

DBA テンプレート

テンプレートとは?

DBCAにおいてデータベースを作成する際の雛形
テンプレートファイルを用いる事で、同じデータベースを作成可能。
Oracleに用意されたテンプレートに加え、
既存のデータベースからテンプレートを作成できる。
また、テンプレートファイルをエディタで修正して作成するデータベースの内容を変更する事も可能。

DBCA:テンプレート管理

DBCAの一機能
事前定義されたデータベース情報
新規にデータベースを作成する場合もデフォルトで用意されているテンプレートを用いてデータベースを作成する。

dbca (2)

dbca

シードテンプレート

種類 テンプレート内容 作成方法
シード
テンプレート
既存のデータベース構造
既存のデータベース物理データファイル
既存のデータベースを使用
(データおよび構造)
非シード
テンプレート
既存のデータベース構造

既存のデータベースを使用
(構造のみ)

作成対象

シードテンプレート 非シードテンプレート
データベース構造
データベースオプション
表領域
データファイル
初期化パラメータファイル
ユーザ定義スキーマ
ユーザ定義データ
物理データファイル

テンプレートファイル

保存場所

$ORACLE_HOME\assistants\dbca\templates

データベース・コンポーネント




























コンポーネント  選択済 
Oracle JVM true
Oracle Text true
Oracle XML DB true
Oracle Multimedia true
Oracle OLAP true
Oracle Spatial true
Oracle Label Security false
サンプル・スキーマ false
Enterprise Managerリポジトリ true
Oracle Application Express true
Oracle Warehouse Builder true
Oracle Database Vault false
Oracle Database Extensions for .NET false
初期化パラメータ
















































名前 内容
audit_file_dest {ORACLE_BASE}\admin\{DB_UNIQUE_NAME}\adump
audit_trail db
compatible 11.2.0.0.0
control_files ("{ORACLE_BASE}\oradata\{DB_UNIQUE_NAME}\control01.ctl", "{ORACLE_BASE}\flash_recovery_area\{DB_UNIQUE_NAME}\control02.ctl") 制御ファイル
db_block_size 8KB データブロックサイズ
db_name
db_recovery_file_dest {ORACLE_BASE}\flash_recovery_area
アーカイブREDOログファイル保存先をフラッシュリカバリ領域に設定
DBA バックアップ/フラッシュリカバリ」参照
db_recovery_file_dest_size MB
diagnostic_dest {ORACLE_BASE}
dispatchers (PROTOCOL=TCP) (SERVICE={SID}XDB)
memory_target 250MB
自動メモリー管理」設定時のメモリサイズ
SGA + PGA
0 指定時は自動メモリー管理:無効

open_cursors 300
processes 150
remote_login_passwordfile EXCLUSIVE
undo_tablespace UNDOTBS1
キャラクタ・セット






名前
データベース・キャラクタ・セット JA16SJISTILDE
各国語キャラクタ・セット AL16UTF16
データファイル


















名前  表領域   サイズ(M) 
{ORACLE_BASE}\oradata\{DB_UNIQUE_NAME}\SYSTEM01.DBF SYSTEM 680
{ORACLE_BASE}\oradata\{DB_UNIQUE_NAME}\SYSAUX01.DBF SYSAUX 440
{ORACLE_BASE}\oradata\{DB_UNIQUE_NAME}\UNDOTBS01.DBF UNDOTBS1 25
{ORACLE_BASE}\oradata\{DB_UNIQUE_NAME}\USERS01.DBF USERS 5
{ORACLE_BASE}\oradata\{DB_UNIQUE_NAME}\TEMP01.DBF TEMP 20
制御ファイル



名前
{ORACLE_BASE}\oradata\{DB_UNIQUE_NAME}\control01.ctl
{ORACLE_BASE}\flash_recovery_area\{DB_UNIQUE_NAME}\control02.ctl
REDOログ・グループ








グループ サイズ(K)
1 51200
2 51200
3 51200

Oracle OracleNet

OracleNetとは?

クライアントとサーバ間通信を行うサービス

リスナー(サーバ側プロセス)が両者を仲介する

oracle_net
トラフィック負荷サービス:Oracle Connection Manager を別途インストール可能

リスナー

リスナーとは?

データベースがクライアントからの初期接続要求を受け付けるアプリケーション
リスナーは、クライアントからの要求を受け取った後、データベースへ要求を引き渡す。
→セッションが確立、保持される。
セッションが保持された後の通信はリスナーを介さないので、
リスナーが停止してもデータベースの使用に支障は無い。
データベース

リスナー

クライアント
以下のツールで設定可能
Oracle Enterprise Manager(ネットサービス管理)
Oracle Net Configuration Assistant
Oracle Net Manager

プロセス操作

EnterpriseManageによる起動・停止の他、コンソールより以下のコマンドで操作可能

コマンド 結果
lsnrctl start (リスナー名) リスナープロセス起動
lsnrctl stop (リスナー名) リスナープロセス停止
lsnrctl status (リスナー名) リスナープロセス状態表示
lsnrctl srvices (リスナー名) リスナープロセスサポートサービス表示

1つのサーバーに対して複数のリスナープロセスを起動できる

NetCA

Oracle Net Configuration Assistant
ネットワーク関連設定ツール
リスナーをインストールできる。

リスナー構成

NetCA (1)

NetCA (2)

NetCA (3)

NetCA (4)

NetCA (5)

NetCA (6)

Net Manager

・リスナーの構成
・ローカルネーミングメソッドの構成
tnsnames.oraの作成

netmanager1

netmanager2

netmanager3

netmanager4

netmanager5

netmanager6

※%ORACLE_HOME%\home\NETWORK\ADMIN (Windows)
※$ORACLE_HOME%\network\admin (Linux)
# tnsnames.ora Network Configuration File: ~\home\NETWORK\ADMIN\tnsnames.ora
# Generated by Oracle configuration tools.
NETSERVICE_OFFICE-YONE = ←接続識別子(ネットサービス名)
 (DESCRIPTION =
  (ADDRESS_LIST =
   (ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))
  )
  (CONNECT_DATA =
   (SERVER = DEDICATED)
   (SERVICE_NAME = service_officeyone)
  )
 )
ORACLR_CONNECTION_DATA =
 (DESCRIPTION =
  (ADDRESS_LIST =
   (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))
  )
  (CONNECT_DATA =
   (SID = CLRExtProc)
   (PRESENTATION = RO)
  )
 )

ネーミングメソッド

クライアント → サーバ 接続の名前解決方法
NAMES.DIRECTORY_PATH = (TNSNAMES, HOSTNAME, EZCONNECT, LDAP, NIS, ONAMES)
ローカルネーミング
TNSNAMES
ホストネーミング
HOSTNAME
簡易接続ネーミング
EZCONNECT
ディレクトリネーミング
LDAP
外部ネーミング
NIS
Oracle Names
ONAMES

ネーミング
メソッド
概要 設定ファイル
ローカル ローカル(クライアント)の設定ファイルで名前解決を行う方式
設定を変更する場合、全クライアントの設定ファイルを変更する必要がある
> sqlplus ユーザ名/パスワード@接続識別子
> sqlplus user/password@TEST

tnsnames.ora
ディレクトリ LDAP対応のディレクトリサーバの設定ファイルで名前解決を行う方式
設定を変更する場合、1カ所の設定ファイルの変更で済む
LDAP対応のディレクトリサーバ
・Microsoft:ActiveDirectory
・Oracle:InternetDirectory

LDAP
Light weight Directory Access Protocol
TCP/IPネットワークにおけるデータベース接続用プロトコル

簡易接続 事前にネットワーク構成が不要
クライアント~サーバ間がTCP/IP接続されている前提
> sqlplus user/password@ホスト名:ポート番号/サービス名
> sqlplus user/password@XXX.XXX.XXX.XXX:XXXX/XXXXX
または
> sqlplus user/password@(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=XXX)(HOST=XXXXX)(PORT=XXXX)))(CONNECT_DATA=(SERVICE_NAME=XXXXX)))
外部 NIS(NewworkInformationService)等のネーミングサービスで名前解決を行う方式

ホスト ホスト名を使用して接続
DNS、hostsファイルによってIPアドレス変換ができる事が前提
初期化パラメータ:SERVICE_NAMESでホスト名を指定
OR
listener.oraファイル:GLOBAL_DBNAMEでホスト名を指定
listener.ora

設定ファイル

一覧

ファイル名 内容
tnsnames.ora ローカルネーミングメソッド用プロファイル
sqlnet.ora OracleNetの構成ファイル
listener.ora リスナー構成ファイル
tnsnames.ora

ローカルネーミングメソッドで接続する場合に使用するファイル

# tnsnames.ora Network Configuration File: C:\oracledatabase\home\network\admin\tnsnames.ora
# Generated by Oracle configuration tools.
TEST = ←接続識別子(ネットサービス名)
 (DESCRIPTION =
  (ADDRESS_LIST =
   (ADDRESS = (PROTOCOL = XXX)(HOST = XXXXX)(PORT = XXXX))
   (ADDRESS = (PROTOCOL = XXX)(KEY = XXXXX))
  )
  (CONNECT_DATA =
   (SERVER = XXXXX)
   (SERVER = DEDICATED) 専用サーバ接続
   (SERVER = SHARED) 共有サーバ接続
   未指定 共有サーバ → 専用サーバ の順で接続
   (SID = XXXXX)
   (PRESENTATION = XXXXX)
   (SERVICE_NAME = XXXXX)
  )
 )
sqlplus ユーザ名/パスワード@接続識別子
で接続可能

sqlnet.ora

NONE/ALL/NTSのいずれか
SQLNET.AUTHENTICATION_SERVICES = (~)
ネーミングメソッドの優先順位
NAMES.DIRECTORY_PATH = (TNSNAMES, HOSTNAME)
接続識別子にドメインが省略された場合のデフォルトドメイン
NAMES.DEFAULT_DOMAIN = mydomain

ローカルネーミング構成時
サーバ側に必要
非ローカルネーミング構成時
クライアントとサーバに必要

listener.ora

リスナー構成ファイル
LISTENER = XXXXX //:リスナー名
 (DESCRIPTION_LIST =
  (DESCRIPTION =
   (ADDRESS_LIST =
    (ADDRESS = (PROTOCOL = XXX)(HOST = XXXXX)(PORT = XXXX))
   )
  )
 )
 
 SID_LIST_LISTENER = XXXX //:接続先データベース
 (SID_LIST =
  (SID_DESC =
   (SID_NAME = XXXXX)
   (ORACLE_HOME = C:\XXXX\XXXX)
   (PROGRAM = XXXXX)
  )
  (SID_DESC =
   (GLOBAL_DBNAME = XXXXX)
   (ORACLE_HOME = C:\XXXX\XXXX)
   (SID_NAME = XXXXX)
  )
 )
 
 LOGGING_LISTENER = ON[OFF]
 LOG_FILE_LISTENER = listener.log
 PASSWORDS_LISTENER = XXXXX
 TRACE_FILE_LISTENER = listener.trc
 TRACE_LEVEL_LISTENER = OFF

Oracle DBCA使用方法

DBCAとは?

DataBase Configuration Assistant
・ データベースの作成
・ データベースの削除
テンプレート管理

データベース作成手順

開始

dbca (1)

処理選択

dbca (2)
DataBase Configuration Assistant
・ データベースの作成
・ データベースの削除
テンプレート管理

テンプレートの選択

dbca (3)

テンプレート 内容
汎用 トランザクション処理とデータウェアハウスの両方
トランザクション処理 複数ユーザー、複数トランザクション処理環境向け
可用性、同時実行性、リカバリ可能性を重
カスタム 全ての項目を一から定義
データウェアハウス 大量データ、複雑な問い合わせ処理環境向け
応答時間や可用性を重視
データベース名

dbca (17)
グローバルデータベース名
データベースの名前
データファイル群の名前
データベースを識別する為の名称
ORACLE_SID
データベース管理システムの管理プログラムのプロセス名
インスタンスを識別する為の名称
通常、グローバルデータベース名 = SID
RAC構成時、データベース1つに対してインスタンスが複数起動する為、
SIDも複数必要になる。

エンタプライズマネージャーの構成

dbca (18)
Oracle エンタプライズマネージャー使用方法①一覧
Oracle エンタプライズマネージャー使用方法②サーバー
Oracle エンタプライズマネージャー使用方法③スキーマ
参照
リカバリ領域(あとで設定)へ推奨バックアップを有効化

管理ユーザー

デフォルトで作成されるユーザー一覧(管理者)
dbca (4)
SYSユーザー
Oracleインストール時に作成されるデータベース管理用ユーザー
DBAロールが付与されている。
データ・ディクショナリ所有者
SYSTEMユーザー
Oracleインストール時に作成されるデータベース管理用ユーザー
全データベースのシステム権限が付与される
通常、一般の管理作業はSYSTEMユーザーで行う

記憶域タイプ

dbca (5)
記憶域のタイプ

タイプ 内容
ファイル・システム OSで扱えるファイルとして管理
自動ストレージ管理 ASM(自動ストレージ管理)
RAWデバイス RAC
リカバリオプション

dbca (6)
フラッシュ・リカバリ領域の指定
アーカイブモード:「ARCHIVELOGモード」に

dbca (7)

メモリ構成

dbca (8)
DBA インスタンス メモリ管理」参照

ブロックサイズ

dbca (9)
Oracle データブロック」参照
(定義済みテンプレートからデータベースを作成している場合は変更不可)

dbca (10)

接続モード

dbca (11)
DBA インスタンス プロセス」参照

記憶域

dbca_tablespace
テンプレートの選択において、「カスタム・データベース」を選択した場合
表領域データファイル名、サイズ等を設定

データベース作成オプション

dbca (13)
データベース・テンプレートとして保存
今回作成したデータベースをテンプレートとして保存する場合
データべース作成スクリプトの生成
コマンドラインからデータベースを作成できるスクリプトを作成する場合

dbca (14)

dbca (15)

テンプレート

事前定義されたデータベース情報
新規にデータベースを作成する場合もデフォルトで用意されているテンプレートを用いてデータベースを作成する。
テンプレートの選択」参照

dbca
DBA テンプレート」参照