基本的なパッチ・アップグレードの実行について

基本的なパッチ・アップグレードは、重要な稼働時間要件がなく、メンテナンス期間が短い場合に使用されます。データベースを停止すると、共有メモリー・セグメントの内容がディスク上のチェックポイント・ファイルに書き込まれます。その後、共有メモリーセグメントは破棄されます。アップグレード後にデータベースを起動すると、新しい共有メモリー・セグメントが作成され、チェックポイント・ファイルの内容が新しく作成されたこの共有メモリー・セグメントに読み込まれます。データベースのサイズによっては、データベースの停止時に実行されるチェックポイント操作と、データベースの起動時に実行される後続のramLoad操作に時間がかかる場合があります。

このプロセスには、TimesTen完全ディストリビューション(アップグレード・リリース)のダウンロードと、新しいインストール環境の作成が含まれます。アップグレードが必要なインスタンスは、次に、新しいインストール環境を指すように変更されます。ttInstanceModifyユーティリティは、このインスタンスの変更を実行するために使用されます。前述のように、すべてのTimesTenデータベースをクローズし、TimesTenからすべてのアプリケーションを切断する必要があります。

新しいインストール環境のダウンロードと作成

TimesTenの新しいパッチ・リリースにアップグレードするには、最初に新しいインストール環境を作成する必要があります。

  1. TimesTenの新しい完全ディストリビューションをダウンロードして解凍するサブディレクトリを作成します。このディレクトリに移動し、新しい完全ディストリビューションをこのディレクトリにダウンロードします。次に、ZIPユーティリティを使用してこのディストリビューションを解凍します。この例では、new_installation_dirサブディレクトリを作成し、timesten2211300.server.linux8664.zipファイルを解凍します。timesten2211300.server.linux8664.zipファイルを解凍すると、このパッチ・アップグレードに使用される新しいインストール環境が作成されます。
    % mkdir -p new_installation_dir
    % cd new_installation_dir

    完全ディストリビューションをnew_installation_dirサブディレクトリにダウンロードします。次に、ZIPユーティリティを使用してディストリビューションを解凍します。

    % unzip /timesten/installations/timesten2211300.server.linux8664.zip
    Archive:  /timesten/installations/timesten2211300.server.linux8664.zip
       creating: tt22.1.1.30.0/
    ...
  2. オプション: 新しいインストール環境のbinサブディレクトリ(この例ではnew_installation_dir/bin)にあるttInstallationCheckユーティリティを使用して、インストールが成功したことを確認します。
    % new_installation_dir/tt22.1.1.30.0/bin/ttInstallationCheck
    This installation has been verified.
    
  3. オプション: サブディレクトリが完全インストール・ディレクトリの下に作成されていることを確認します。これらのサブディレクトリは、リリースごとに変わる可能性があります。
    % ls new_installation_dir/tt22.1.1.30.0
    3rdparty     bin      info        network        plsql    ttoracle_home
    PERL         grid     kubernetes  nls            startup
    README.html  include  lib         oraclescripts  support
    
新しいインストール環境が正常に作成されました。

データベースをメモリーからアンロードします

メモリーからデータベースをアンロードするには、次のステップを実行します。

  1. データベースをクローズします。これにより、今後データベースに接続できなくなります。
    % ttAdmin -close database1
    RAM Residence Policy            : manual
    Manually Loaded In RAM          : True
    Replication Agent Policy        : manual
    Replication Manually Started    : False
    Cache Agent Policy              : manual
    Cache Agent Manually Started    : False
    Database State                  : Closed
    

    Oracle TimesTen In-Memory Databaseオペレーション・ガイドユーザー接続のためのデータベースのオープンおよびクローズを参照してください。

  2. すべてのアプリケーションをデータベースから切断します。詳細は、Oracle TimesTen In-Memory Databaseオペレーション・ガイドデータベースからの切断を参照してください。
  3. データベースをメモリーからアンロードします。RAMポリシーの指定の詳細は、Oracle TimesTen In-Memory Databaseオペレーション・ガイドRAMポリシーの指定を参照してください。

    RAMポリシーがalwaysに設定されている場合は、manualに変更した後で、メモリーからデータベースをアンロードします。

    % ttAdmin -ramPolicy manual -ramUnload database1
    
    RAM Residence Policy            : manual
    Manually Loaded In RAM          : False
    Replication Agent Policy        : manual
    Replication Manually Started    : False
    Cache Agent Policy              : manual
    Cache Agent Manually Started    : False
    Database state                  : closed
    

    RAMポリシーがmanualに設定されている場合は、メモリーからデータベースをアンロードします。

    ttAdmin -ramUnload database1
    
    RAM Residence Policy            : manual
    Manually Loaded In RAM          : False
    Replication Agent Policy        : manual
    Replication Manually Started    : False
    Cache Agent Policy              : manual
    Cache Agent Manually Started    : False
    Database state                  : closed
    

    RAMポリシーがinUseに設定されており、猶予期間が設定されている場合は、猶予期間に0 (ゼロ)を設定するか、猶予期間に設定した時間が経過するまで待機します。TimesTenは、アクティブな接続がすべて切断されると、RAMポリシーがinUseであるデータベースをメモリーからアンロードします。

    % ttAdmin -ramGrace 0 database1
    
    RAM Residence Policy            : inUse
    Replication Agent Policy        : manual
    Replication Manually Started    : False
    Cache Agent Policy              : manual
    Cache Agent Manually Started    : False
    Database state                  : closed
    

新しいインストール環境を指すようにインスタンスを変更します

パッチのアップグレード・プロセスでは、新しいインストール環境を指すように既存のTimesTenインスタンスを変更する必要があります。
次のステップを実行します:
  1. ttDaemonAdminユーティリティを使用して、TimesTenメイン・デーモンを停止します。
    % ttDaemonAdmin -stop
    TimesTen Daemon (PID: 21031, port: 6624) stopped.
    
  2. ttInstanceModifyユーティリティを使用して、新しいインストール環境を指すようにmyinstanceインスタンスを変更します。TimesTen完全ディストリビューションが解凍され、new_installation_dir/tt22.1.1.30.0に新しいインストールが作成されたことを思い出してください。詳細は、新しいインストール環境のダウンロードと作成を参照してください。
    % $TIMESTEN_HOME/bin/ttInstanceModify -install new_installation_dir/tt22.1.1.30.0
    
    Instance Info (UPDATED)
    -----------------------
    
    Name:           myinstance
    Version:        22.1.1.30.0
    Location:       /scratch/ttuser/myinstance
    Installation:   new_installation_dir/tt22.1.1.30.0
    Daemon Port:    6624
    Server Port:    6625
    
    
    The instance myinstance now points to the installation in new_installation_dir/tt22.1.1.30.0
  3. ttDaemonAdminユーティリティを使用して、TimesTenメイン・デーモンを再起動します。次に、ttVersionユーティリティを実行して、myinstanceインスタンスが新しいパッチ・リリース(この例では22.1.1.30.0)にアップグレードされていることを確認します。
    % ttDaemonAdmin -start
    TimesTen Daemon (PID: 20699, port: 6624) startup OK.
    
    % ttVersion
    TimesTen Release 22.1.1.30.0 (64 bit Linux/x86_64) (myinstance:6624) 2021-09-15T16:53:47Z
      Instance admin: instanceadmin
      Instance home directory: /scratch/ttuser/myinstance
      Group owner: g900
      Daemon home directory: /scratch/ttuser/myinstance/info
      PL/SQL enabled.
    
新しいインストール環境を指すようにインスタンスが正常に変更されました。

メモリーにデータベースをロードします

次のステップに従って、データベースをメモリーにロードします。

  1. メモリーにデータベースをロードします。この例では、RAMポリシーをmanualに設定した後、database1データベースをメモリーにロードします。

    RAMポリシーをmanualに設定します。

    % ttAdmin -ramPolicy manual database1
    
    RAM Residence Policy            : manual
    Manually Loaded In RAM          : False
    Replication Agent Policy        : manual
    Replication Manually Started    : False
    Cache Agent Policy              : manual
    Cache Agent Manually Started    : False
    Database state                  : closed
    

    メモリーにdatabase1データベースをロードします。

    % ttAdmin -ramLoad database1
    
    RAM Residence Policy            : manual
    Manually Loaded In RAM          : True
    Replication Agent Policy        : manual
    Replication Manually Started    : False
    Cache Agent Policy              : manual
    Cache Agent Manually Started    : False
    Database state                  : closed
    

    RAMポリシーの詳細は、Oracle TimesTen In-Memory Databaseオペレーション・ガイドRAMポリシーの指定を参照してください。

  2. ユーザー接続に対するデータベースのオープン
    % ttAdmin -open database1
    RAM Residence Policy            : manual
    Manually Loaded In RAM          : True
    Replication Agent Policy        : manual
    Replication Manually Started    : False
    Cache Agent Policy              : manual
    Cache Agent Manually Started    : False
    Database State                  : Open
    

    Oracle TimesTen In-Memory Databaseオペレーション・ガイドユーザー接続のためのデータベースのオープンおよびクローズを参照してください。

パッチ・アップグレードの検証

パッチ・アップグレードを検証します。
  1. インスタンス管理者ユーザー(この例ではinstanceadmin)がdatabase1データベースに接続でき、問合せを実行できることを確認します。
    % ttisql database1;
    
    Copyright (c) 1996, 2021, Oracle and/or its affiliates. All rights reserved.
    Type ? or "help" for help, type "exit" to quit ttIsql.
    
    
    
    connect "DSN=database1";
    Connection successful: DSN=database1;UID=instanceadmin;DataStore=/scratch/ttuser/database1;
    DatabaseCharacterSet=AL32UTF8;ConnectionCharacterSet=AL32UTF8;LogBufMB=1024;
    PermSize=500;TempSize=300;
    (Default setting AutoCommit=1)
    Command> connect adding "uid=user1;pwd=********" as user1;
    Connection successful: DSN=database1;UID=user1;DataStore=/scratch/ttuser/database1;
    DatabaseCharacterSet=AL32UTF8;ConnectionCharacterSet=AL32UTF8;LogBufMB=1024;
    PermSize=500;TempSize=300;
    (Default setting AutoCommit=1)
    user1: Command> SELECT COUNT (*) FROM employees;
    < 107 >
    1 row found.
    
パッチのアップグレードを正常に実行しました。