Forum Stats

  • 3,770,766 Users
  • 2,253,163 Discussions
  • 7,875,581 Comments

Discussions

ADB HOL #8-1 : 各種設定の確認、レポートの取得

TakeshiNagakubo-Oracle
TakeshiNagakubo-Oracle Posts: 18 Employee
edited Feb 15, 2021 12:18AM in Social Groups

目次に戻る : チュートリアル : Oracle Cloud Infrastructure を使ってみよう

>ADBコンテンツ一覧に戻る

Autonomous Databaseは初期化パラメータを初め、多くの設定は変更することはできません。

(そもそも自律型DBとして、それらを気にする必要はない、というコンセプト)

しかしながら、Oracle Databaseに詳しい方にとっては、これまでのOracle Databaseと何が違うのか?など、より詳細を知りたいと思われるかと思います。

この章ではそういった方々のために、初期化パラメータの確認やAWRレポート等の取得方法をご確認いただき、普段お使いのOracleデータベースと同様に扱えることを見ていただきます。

尚、Autonomous Databaseにおける制限事項については、ATP、ADWの各マニュアルを参照ください。

本章ではアラートログやトレースログの取得方法も扱いますが、ADBを利用するに際して何か問題が生じた場合は、弊社サポートサービスに対してサービスリクエスト(SR)の発行を優先ください。

作業の流れ

  1. SQL Developer DBAビューを起動しよう
  2. 初期化パラメータを確認しよう
  3. 各種レポートを取得しよう(AWRレポート、アラートログ、トレースログ)

所要時間 : 約30分

1. SQL Developer DBAビューを起動しよう

まずはDBAウィザードの起動方法を見ていきましょう

1. を参考にSQL DeveloperでADBインスタンスに接続します。

2. 表示からDBAをクリックし、画面左下にDBAビューを表示します。

pastedImage_5png

3. DBAビューに新しい接続を作成するために、左下の緑色のプラスマークをクリックします。

pastedImage_6png

4. 既存の接続から atp01_high_admin を選択し、OKをクリックします。

pastedImage_0png

ここでは便宜上、接続サービスにHIGHを利用していますが、DBAビューからの接続は管理用途であるため、本来はLOWが推奨です。

5. 接続が作成されると、画面左下のDBAビューに新たにatp01_high_adminが表示されます。プラス(+)をクリックし、詳細情報を表示してください。

pastedImage_26png

2. データベースの構成を確認しよう

以降で記載する各種レポートが上手く表示されないといった場合は、SQL Developerのバージョンを最新にアップグレードしてください。

1. データベース構成から初期化パラメータを選択します。

pastedImage_26png

ADBに設定されている初期化パラメータが一覧で確認できます。

基本的にデフォルトのままでお使いいただくことになりますが、一部NLS_XXといったパラメータは変更可能です。

詳しくは本ページの冒頭に記載の各制限事項へのリンクを参照ください。

尚、直接SQLを実行しても上記は確認可能です。

SQL> SELECT name, value FROM v$parameter;

2. その他、DBAビューでは様々な情報を確認可能です。適宜ご参照ください。

3. 各種レポートを取得しよう

次にOracle Databaseを運用する際によく利用するAWRレポートやアラートログ、トレースログの取得方法を順次確認していきます。

2020年6月のサービスアップデートにより、Performance Hubの画面からもAWRレポートを取得できるようになりました!

1. SQL Developer DBAビューよりAWRレポートを取得しましょう

1-1. パフォーマンスからAWRを選択します。Diagnostic Packのライセンス保有に関する確認がありますので、はいをクリックします。

Autonomous DatabaseではOracle Database の多くのオプション機能がサブスクリプションに含まれています。RAC、Partition、Database In Memory、Advanced Compression、
Advanced Security、diagnostics pack、等々。利用できないオプション機能については本ページの
冒頭に記載の各制限事項へのリンクを参照ください。

pastedImage_113png

1-2. AWR Report Viewerを選択します。参照からスナップショットを選択し、緑色の取得ボタンをクリックください。(取得には多少時間がかかります。)

ADBではデフォルトで1時間に1回、スナップショットが作成されますが、
データベースを作成した直後の場合、スナップショットが存在しない場合があります。
しばらく時間を空けて実施ください。

pastedImage_110png

1-3. AWRレポートが表示されますので、保存ボタンをクリックしてAWRレポートを保存してください。

pastedImage_125png

* SQL Developer DBAビューでは、AWRのスナップショットを取得することも可能です。

2. 次にコマンドでAWRレポートを取得してみましょう

2-1. Tera Termを起動し、仮想マシンにログインします。

2-2. oracleユーザに切り替えます。

$ sudo su - oracle

2-3. SQL*Plusでログインします。

$ export TNS_ADMIN=/home/oracle/labs/wallets
$ sqlplus admin/Welcome12345#@atp01_low

2-4. DBID、 instance_number、Snapshot IDを取得するため、以下を実行します。

set lines 1000
set pages 5000
col BEGIN_INTERVAL_TIME for a30
col END_INTERVAL_TIME   for a30

select a.DBID, i.INSTANCE_NUMBER SID, a.SNAP_ID, a.BEGIN_INTERVAL_TIME, a.END_INTERVAL_TIME from AWR_PDB_SNAPSHOT a, gv$instance i where a.INSTANCE_NUMBER = i.INSTANCE_NUMBER and to_char(END_INTERVAL_TIME,'yyyy/mm/dd') =to_char(sysdate,'yyyy/mm/dd') order by SNAP_ID;

2-5. 上記2-4の出力結果を利用してAWRを取得します。以下ではsample_awr.htmlというファイルにAWRレポートを出力しています。

set lines 1000
set pages 5000
set long 1000000
set longchunksize 1000000

spool sample_awr.html
SELECT OUTPUT FROM TABLE(DBMS_WORKLOAD_REPOSITORY.awr_report_html (&DBID, &SID, &snap_id_start, &snap_id_finish)); spool off

2-6. 補足

【スナップショット間隔の変更方法】

10分に変更する例。(デフォルトは60分)

SQL> exec dbms_workload_repository.modify_snapshot_settings (interval=>10);

【スナップショットの手動取得方法】

SQL> exec dbms_workload_repository.create_snapshot();

3. 次にアラートログ、トレースログを取得してみましょう。

通常、アラートログ、トレースログはOracle Databaseが稼働するOSのファイルシステム上にありますが、ADBはOS領域にアクセスすることができないため、SQLを介して取得します。

3-1. SQL*Plusでログインします。

$ export TNS_ADMIN=/home/oracle/labs/wallets
$ sqlplus admin/Welcome12345#@atp01_low

3-2. アラートログを確認するために、以下のSQLを実行します。(以下では直近2週間分のアラートログを表示しています。)

-- 出力設定
set lines 200
set pages 9999
set trims on
col ORIGINATING_TIMESTAMP for a40
col MESSAGE_TEXT for a120
col PROCESS_ID for a20

-- アラートログの確認
select ORIGINATING_TIMESTAMP, PROCESS_ID, message_text
from V$DIAG_ALERT_EXT
where ORIGINATING_TIMESTAMP > sysdate - 14;

3-3. トレースログを確認するために、以下のSQLを実行します。

     トレースファイルは複数存在するため、ファイルの一覧を確認した上で、必要なファイルを表示するという流れです。

-- 出力設定
col TRACE_FILENAME for a30
col FILE_NAME for a30
col PAYLOAD for a300
set lines 200
set pages 9999

-- ファイル名を取得
select TRACE_FILENAME, CHANGE_TIME
from V$DIAG_TRACE_FILE
where  TRACE_FILENAME like '%ora%'
order by CHANGE_TIME
;

-- トレースファイルを確認
select PAYLOAD
from V$DIAG_TRACE_FILE_CONTENTS
where TRACE_FILENAME='esj1pod2_ora_270475.trc'
order by line_number
;

以上で、この章の作業は終了です。

>ADBコンテンツ一覧に戻る