Oracle 19cと26ai初期化パラメータ比較|新機能と廃止一覧

26ai

Oracle Database 19c から最新の Oracle Database 26ai (FREE) への進化において、初期化パラメータは劇的に変化しました。本記事では、筆者の検証環境(Oracle Database 19c および Oracle Database 26ai FREE)における実機の show parameter 出力結果を元に、AI Vector SearchJavaScript (MLE) 対応など追加された新機能パラメータと、廃止された重要なパラメータ(SEC_CASE_SENSITIVE_LOGON等)を徹底比較・解説します。

※19c は Release Update (RU) の適用状況によりパラメータが増減する場合がありますが、本記事は特定環境での出力差分に焦点を当てています。

💰 【PR】Oracleエンジニアの市場価値、調べてみませんか?

Oracleのスキルは需要が高く、特定の資格や経験を持っていると年収が大幅にアップするケースがあります。まずはIT専門のエージェントで非公開求人をチェックしてみませんか?

結論・最短手順:26ai 移行でやるべきチェック

19c と 26ai のパラメータ差異から読み取れる、DBAが最初に確認すべきポイントは以下の通りです。

  1. AI機能のメモリ設計: VECTOR_MEMORY_SIZE0 (デフォルト) のため、AI Vector Search を使うなら SGA 設計の見直しと設定変更を行う。
  2. 新言語エンジンの確認: ストアドプロシージャで JavaScript を使う場合、MLE_PROG_LANGUAGESALL になっているか確認する。
  3. 認証セキュリティの修正: SEC_CASE_SENSITIVE_LOGON がパラメータから消滅(強制有効化)したため、古いアプリのパスワード大文字小文字接続検証を必ず行う。
  4. キャッシュ戦略の検討: エッジ用途なら TRUE_CACHE の導入を検討する。

1. 背景と基礎:パラメータの変化とは?

初期化パラメータとは?

初期化パラメータとは、データベース起動時に読み込まれる設定値(spfile / pfile)のことです。メモリ(SGA/PGA)のサイズや、使用する機能、セキュリティポリシーを決定します。

19c vs 26ai の変化の傾向

Oracle 19c(Long Term Support)から 23ai/26ai へのジャンプでは、単なるチューニング項目の増減だけでなく、「データベースにAIとアプリロジックを組み込む」ためのパラメータが大量に追加されています。一方で、レガシーなセキュリティ設定は「廃止(強制適用)」される傾向にあります。

2. 26ai (23aiベース) で追加された主要パラメータ解説

実機確認に基づき、19c (最新RUを含む) には存在せず、26ai (23ai) で本格導入された特に重要なパラメータを機能別に解説します。

AI & Vector Search 関連(最重要)

Oracle 26ai の目玉機能であるベクトル検索(RAG構築などに利用)を制御するパラメータ群です。これらは19cには存在しません。

パラメータ名デフォルト値 (26ai FREE)解説
VECTOR_MEMORY_SIZE0ベクトルインデックスや検索処理に使用するメモリ領域(SGA内)の上限。AI検索を使う場合は設定必須。
VECTOR_QUERY_CAPTUREONベクトル検索クエリのキャプチャ機能。チューニングや利用状況の分析に使用されます。
VECTOR_INDEX_NEIGHBOR_GRAPH_RELOADRESTARTベクトルインデックスのグラフ構造のリロードポリシー。

多言語エンジン (MLE) & 開発者向け

データベース内で JavaScript を実行するための Multilingual Engine (MLE) や SQL高速化関連です。

パラメータ名デフォルト値 (26ai FREE)解説
MLE_PROG_LANGUAGESALLDB内で実行可能なプログラミング言語。ALL により JavaScript ストアドプロシージャが標準で利用可能です。
SQL_TRANSPILEROFFSQL を PL/SQL にトランスパイルして高速化する機能(SQL Transpiler)。
JSON_BEHAVIOR(空欄)JSON データの扱いに関する挙動制御。

パフォーマンス & キャッシュ (True Cache)

アプリケーションキャッシュとしての機能を強化する設定です。

パラメータ名デフォルト値 (26ai FREE)解説
TRUE_CACHEFALSEデータベースをインメモリ・キャッシュ(True Cache)として動作させる場合に TRUE に設定。
LOCKFREE_RESERVATIONONトランザクションの同時実行性を高めるロックフリー予約機能。

💰 【PR】Oracleエンジニアの市場価値、調べてみませんか?

Oracleのスキルは需要が高く、特定の資格や経験を持っていると年収が大幅にアップするケースがあります。まずはIT専門のエージェントで非公開求人をチェックしてみませんか?

3. 19c から廃止・変更されたパラメータ

19c のリストには存在し、26ai のリストから消滅(または不可視化)したパラメータです。これらは「設定変更できなくなった」ことを意味し、移行時のトラブル要因第1位です。

認証・セキュリティの厳格化

  • SEC_CASE_SENSITIVE_LOGON
    • 19c: TRUE (変更可能)
    • 26ai: リストに存在せず
    • 解説: パスワードの大文字小文字区別を無効化(FALSE)する設定が廃止されました。26ai では大文字小文字の区別が強制されます。10g 以前の古いクライアントや、パスワードを小文字だけで送るレガシーアプリは接続エラーになります。

監査・管理

  • UNIFIED_AUDIT_SGA_QUEUE_SIZE
    • 19c: 1048576
    • 26ai: リストに存在せず
    • 解説: 統合監査(Unified Audit)の内部アーキテクチャ変更に伴い、キューサイズの手動制御が不要、または自動化されました。

その他

  • SERVICE_NAMES
    • 19c: orcl
    • 26ai: FREE
    • これは廃止ではありませんが、デフォルトのサービス名がエディションにより異なる点に注意してください。接続文字列(TNSNAMES.ORA)の変更が必要です。

4. 実行例:新機能パラメータの確認と設定

実際に 26ai 環境で、AI ベクトル検索用のメモリを割り当てて有効化する手順です。 ※以下のSQLは SYSDBA 権限で実行してください。

前提:

  • Oracle Database 26ai (FREE) 環境
  • CDB$ROOT または PDB に接続
-- 1. 現在の Vector 関連パラメータを確認
-- コマンドの意図:デフォルトで機能が有効か、メモリ設定がどうなっているか確認する
col name format a40
col value format a20
SELECT name, value 
FROM v$parameter 
WHERE name LIKE 'vector_%';

-- 【実行結果イメージ】
-- NAME                                     VALUE
-- ---------------------------------------- --------------------
-- vector_memory_size                       0
-- vector_query_capture                     ON
-- ...

-- 2. ベクトル検索用に SGA メモリを確保 (例: 1GB)
-- 解説:Vector Search を利用するには SGA 内に専用領域 (Vector Pool) が必要です。
-- 注意:SGA_TARGET の内数、または追加で物理メモリが必要です。
ALTER SYSTEM SET vector_memory_size = 1G SCOPE=BOTH;

-- 3. MLE (JavaScript) が有効か確認
SELECT name, value 
FROM v$parameter 
WHERE name = 'mle_prog_languages';

-- 結果が 'ALL' なら JavaScript プロシージャが作成可能です。

5. トラブルシューティング

パラメータ差異によって発生しやすいエラーとその対処法です。

エラー/現象考えられる原因対処法
ORA-01017: ユーザー名/パスワードが無効SEC_CASE_SENSITIVE_LOGON 廃止により、パスワードの大文字小文字が厳密に判定されている。クライアント側で正しいケース(大文字/小文字)でパスワードを送信するよう修正する。
ORA-00922: オプション指定が無効19c の pfile/spfile をインポートした際、廃止パラメータが含まれている。パラメータファイルから SEC_CASE_SENSITIVE_LOGON 等の廃止行を削除して再試行する。
ORA-00821: SGAメモリ不足新機能(vector_memory_size 等)にメモリを割り当てた結果、既存の sga_target が不足した。sga_max_size および sga_target を増やす設計変更を行う。

6. FAQ:よくある質問

Q1: 19c のパラメータファイル (pfile) をそのまま 26ai で使えますか? A1: いいえ、推奨されません。 廃止されたパラメータが含まれているとインスタンス起動時にエラーになります。また、ディレクトリパス(audit_file_dest 等)のデフォルト値も大きく異なります。新規作成するか、廃止パラメータを削除してから使用してください。

Q2: 26ai で JavaScript (MLE) を無効にする方法は? A2: セキュリティ上の理由で無効化したい場合、MLE_PROG_LANGUAGES パラメータを変更することで制限可能です。ただし、一部の内部機能が依存している可能性があるため、公式ドキュメントを確認してください。

Q3: compatible パラメータの値はどうなっていますか? A3: 今回の 26ai FREE 環境では compatible23.6.0 となっています。これは 26ai が 23ai のコードベースを拡張したものであることを示唆しています。

7. まとめ

Oracle 19c と 26ai の初期化パラメータ比較による要点は以下の通りです。

  1. AI・ベクトル対応: VECTOR_MEMORY_SIZE など、生成AI連携のためのパラメータが最重要追加項目。
  2. 開発言語の拡張: MLE_PROG_LANGUAGES により、DB内で JavaScript が標準で動くようになった。
  3. セキュリティの強制: SEC_CASE_SENSITIVE_LOGON が廃止され、パスワードの大文字小文字区別が強制になった点は移行時の最大の注意点。
  4. クラウド・エッジ対応: TRUE_CACHE やエッジコンピューティング向けの機能が強化されている。

移行計画を立てる際は、単なる「設定のコピー」ではなく、これら新機能をどう活用(または無効化)するか、パラメータレベルでの再設計をお勧めします。

[参考]
Oracle AI Vector Searchのパラメータ

【ご注意】 本記事の比較結果は、あくまで Oracle Database 19c (Non-CDB/Linux)Oracle Database 26ai FREE (CDB/Linux) の特定の実機環境における show parameter 出力の差異に基づいています。 19c 環境への Release Update (RU) 適用状況や、26ai の製品版(Enterprise Edition等)では、パラメータの存在有無やデフォルト値が異なる可能性があります。公式マニュアルも併せてご参照ください。

💰 【PR】Oracleエンジニアの市場価値、調べてみませんか?

Oracleのスキルは需要が高く、特定の資格や経験を持っていると年収が大幅にアップするケースがあります。まずはIT専門のエージェントで非公開求人をチェックしてみませんか?

コメント

タイトルとURLをコピーしました