株式会社コーソル

コーソルDatabaseエンジニアのブログ

技術ブログ

マルチテナント環境での初期化パラメータ – (全部俺)某Oracle書籍を25日後に脱稿するXX歳のAdvent Calendar 2021 8日目

Oracle ACEの渡部です。

この記事は(全部俺)某Oracle書籍を25日後に脱稿するXX歳の Advent Calendar 2021の8日目の記事です。7日目の記事は共通ユーザーと共通ロールはあるが共通権限はない - (全部俺)某Oracle書籍を25日後に脱稿するXX歳のAdvent Calendar 2021 7日目でした。

つい「カッと」なって(全部俺)某Oracle書籍を25日後に脱稿するXX歳の Advent Calendar 2021を作ってしまいました。

オラクルマスター教科書 Bronze DBA Oracle Database Fundamentalsオラクルマスター教科書 Silver DBA Oracle Database Administration Iに続く「某Oracle書籍」を執筆中のOracle ACE 渡部が、12月25日のドラフト脱稿目指して1日1記事頑張って投稿してゆきたいと思います!

(注意点) 一連の投稿について

  • 「某Oracle書籍」執筆中に実施した下調べの内容や、「某Oracle書籍」のターゲットを超える内容、内容的に関連するセミナー資料の抜粋などを記載する予定です。

  • 2021年12月時点で「某Oracle書籍」の発売時期は未定です。もう少々お待ちを。

  • 万が一、関係者から怒られたら途中でやめるかも(たぶん大丈夫だと思うのだけど)

  • 執筆中の「某Oracle書籍」の記載内容と、一連の投稿の記載内容は異なります

    • そもそも、同じ内容を投稿したら「問題」になる!
  • 「某Oracle書籍」の記載と、一連の投稿は品質が全く異なります

    • 「某Oracle書籍」の記載は、十分に推敲を重ねた、図や表を用いた丁寧なものです。一方、一連の投稿はメモ書きの延長のレベルで、概して推敲が不十分で図や表はあまり使っていません。
    • 「某Oracle書籍」の記載は、先頭から読んでいけばスンナリ理解できるように工夫された完結性・完備性が高いものです。一方、一連の投稿は特定の観点やトピックにのみ関連するものです。内容を理解するには前提知識が求められます。

[宣伝] これまでに渡部が執筆した書籍の一覧

2022/3/25 追記

12月中の脱稿には失敗してしまいましたが、その後鋭意執筆を進め、2022年5月27日に「オラクルマスター教科書 Gold DBA Oracle Database Administration II」を販売開始します。詳細は以下をご覧ください。

ORACLE MASTER Bronze DBA 2019試験対策本の発売日が決定しました

マルチテナント環境での初期化パラメータ

  • 従来同様、初期化パラメータはSPFILEに格納される
  • SPFILEに格納された初期化パラメータの設定値はCDBに対して適用される
  • 各PDBには、CDBの初期化パラメータの設定値がデフォルトで適用される(継承モデル)

PDA毎に個別設定可能な初期化パラメータ(ISPDB_MODIFIABLE)

一部の初期化パラメータは、PDB毎に個別に設定可能になっています。

どの初期化パラメータがPDA毎に個別設定可能かどうかについては、

  • リファレンスマニュアルの記載(PDBで変更可能=はい)
  • V$SYSTEM_PARAMETERなどのビュー(ISPDB_MODIFIABLE=\'TRUE\')

から特定できます。

ISPDB_MODIFIABLE=\'TRUE\'な初期化パラメータをPDBレベルで設定すると、CDB/別PDBと異なる設定値にできます。

ISPDB_MODIFIABLEとISSES_MODIFIABLE

個人的に気になっていたこともあって、 ISPDB_MODIFIABLE=\'TRUE\'な初期化パラメータのうち、 ISSES_MODIFIABLE=\'TRUE\'な初期化パラメータがどれだけを占めているかを、12.1.0.1(MTAが導入されたリリース)と19.3で調べました。

12.1.0.1

私の記憶通り、 ISPDB_MODIFIABLE=\'TRUE\'な初期化パラメータの大部分が ISSES_MODIFIABLE=\'TRUE\'な初期化パラメータとなっています。

逆に言うと、「真の意味でPDA毎に個別設定可能」な初期化パラメータである、 ISPDB_MODIFIABLE=\'TRUE\' かつ ISSES_MODIFIABLE=\'FALSE\'な初期化パラメータは少なかったと言えます。

SQL> SELECT ISPDB_MODIFIABLE, ISSES_MODIFIABLE, count(*)
  2    FROM  (SELECT DISTINCT NAME, ISPDB_MODIFIABLE, ISSES_MODIFIABLE
  3            FROM V$SYSTEM_PARAMETER)
  GROUP BY ISPDB_MODIFIABLE, ISSES_MODIFIABLE
  4    5    ORDER BY 1 DESC;

ISPDB ISSES   COUNT(*)
----- ----- ----------
TRUE  FALSE         10←★
TRUE  TRUE         161
FALSE FALSE        190
FALSE TRUE           6

SQL> SELECT NAME
  2    FROM  (SELECT DISTINCT NAME, ISPDB_MODIFIABLE, ISSES_MODIFIABLE
  3            FROM V$SYSTEM_PARAMETER)
  4    WHERE ISPDB_MODIFIABLE='TRUE'
    AND ISSES_MODIFIABLE='FALSE'
  5    6    ORDER BY NAME;

NAME
------------------------------------------------
O7_DICTIONARY_ACCESSIBILITY
cell_offload_decryption
fixed_date
listener_networks
max_string_size
open_cursors
optimizer_secure_view_merging
resource_limit
resource_manager_plan
sessions

10 rows selected.

19.3

19.3では 「真の意味でPDA毎に個別設定可能」な初期化パラメータ、 ISPDB_MODIFIABLE=\'TRUE\' かつ ISSES_MODIFIABLE=\'FALSE\' な初期化パラメータが大幅に増えています(12.1.0.1 10個 → 19.2 75個)。

SQL> SELECT ISPDB_MODIFIABLE, ISSES_MODIFIABLE, count(*)
  2    FROM  (SELECT DISTINCT NAME, ISPDB_MODIFIABLE, ISSES_MODIFIABLE
  3            FROM V$SYSTEM_PARAMETER)
  4    GROUP BY ISPDB_MODIFIABLE, ISSES_MODIFIABLE
  5    ORDER BY 1 DESC;

ISPDB ISSES   COUNT(*)
----- ----- ----------
TRUE  FALSE         75
TRUE  TRUE         116
FALSE FALSE        188
FALSE TRUE          66

SQL> SELECT NAME
  2    FROM  (SELECT DISTINCT NAME, ISPDB_MODIFIABLE, ISSES_MODIFIABLE
  3            FROM V$SYSTEM_PARAMETER)
  4    WHERE ISPDB_MODIFIABLE='TRUE'
  5      AND ISSES_MODIFIABLE='FALSE'
  6    ORDER BY NAME;

NAME
------------------------------------------------
adg_account_info_tracking
awr_pdb_autoflush_enabled
bitmap_merge_area_size
blank_trimming
cell_offload_decryption
client_result_cache_lag
client_result_cache_size
commit_point_strength
common_user_prefix
cpu_count
cpu_min_count
create_bitmap_area_size
db_block_checking
db_cache_size
db_domain
db_files
db_performance_profile
enable_automatic_maintenance_pdb
encrypt_new_tablespaces
fixed_date
forward_listener
inmemory_automatic_level
inmemory_expressions_usage
inmemory_force
inmemory_optimized_arithmetic
inmemory_prefer_xmem_memcompress
inmemory_prefer_xmem_priority
inmemory_size
inmemory_virtual_columns
inmemory_xmem_size
job_queue_processes
ldap_directory_access
ldap_directory_sysauth
listener_networks
lob_signature_enable
local_listener
long_module_action
max_datapump_jobs_per_pdb
max_datapump_parallel_per_job
max_idle_blocker_time
max_idle_time
max_iops
max_mbps
max_pdbs
max_string_size
open_cursors
open_links
optimizer_secure_view_merging
parallel_max_servers
parallel_servers_target
pdb_os_credential
pga_aggregate_limit
pga_aggregate_target
private_temp_table_prefix
remote_listener
remote_recovery_file_dest
resource_limit
resource_manager_plan
result_cache_max_result
result_cache_max_size
rollback_segments
scheduler_follow_pdbtz
sessions
sga_min_size
sga_target
shadow_core_dump
shared_pool_size
shared_servers
shrd_dupl_table_refresh_rate
sql92_security
tde_configuration
undo_management
undo_retention
undo_tablespace
unified_audit_systemlog

75行が選択されました。

真の意味でPDA毎に個別設定可能な初期化パラメータの分類

上記でリストした、「真の意味でPDA毎に個別設定可能」な初期化パラメータは、ざっくり

  1. PDBレベルのリソース制御
  2. PDBレベルの構成編

に分類できます。

PDBレベルのリソース制御に分類される主なパラメータ

bitmap_merge_area_size
cpu_count
cpu_min_count
create_bitmap_area_size
db_cache_size
db_files
job_queue_processes
max_datapump_jobs_per_pdb
max_datapump_parallel_per_job
max_idle_blocker_time
max_idle_time
max_iops
max_mbps
open_cursors
open_links
parallel_max_servers
parallel_servers_target
pga_aggregate_limit
pga_aggregate_target
resource_manager_plan
result_cache_max_result
result_cache_max_size
sessions
sga_min_size
sga_target
shared_pool_size

2022/3/25 追記

12月中の脱稿には失敗してしまいましたが、その後鋭意執筆を進め、2022年5月27日に「オラクルマスター教科書 Gold DBA Oracle Database Administration II」を販売開始します。詳細は以下をご覧ください。

ORACLE MASTER Bronze DBA 2019試験対策本の発売日が決定しました

プロフィール

On7tWW6m1Ul4

渡部 亮太

・Oracle ACE
・AWS Certified Solutions Architect - Associate
・ORACLE MASTER Platinum Oracle Database 11g, 12c 他多数

カテゴリー

アーカイブ