10 TDE対応Oracleデータベースの管理
Oracle Database Appliance上でTDE対応のOracleデータベースを管理します。
- Oracle Database Applianceの透過的データベース暗号化(TDE)について
透過的データ暗号化(TDE)により、表および表領域に格納される機密データを暗号化できます。 - Oracle Key Vaultについて
Oracle Key Vaultは、フォルト・トレラントで、可用性と拡張性が高い、セキュアな標準準拠のキーおよびシークレット管理アプライアンスであり、ここでセキュリティ・オブジェクトを格納、管理および共有できます。 - ユーザー資格証明を使用したTDE対応データベースの作成
Oracle Key Vaultのユーザーの資格証明を使用して、Oracle Database ApplianceでTDE対応データベースを作成する方法を説明します。この方法では、ベア・メタル・システムおよびDBシステムでのTDE対応データベースの作成がサポートされています。 - Oracle Key VaultのエンドポイントとともにOracle Key Vaultを使用したTDE対応データベースの作成
Oracle Key Vaultにすでに存在するエンドポイントおよびウォレットを使用して、Oracle Database ApplianceでTDE対応データベースを作成する方法を説明します。この方法では、ベア・メタル・システムおよびDBシステムでのTDE対応データベースの作成がサポートされています。 - ODACLIコマンドを使用したOracle Key Vaultサーバー構成操作の管理
ベア・メタル・システムおよびDBシステムのOracle Database ApplianceでOracle Key Vaultサーバー構成操作を管理する方法を説明します。 - TDEキーがOracle Key Vaultに格納されたTDE対応データベースに対するデータベース操作の管理
ベア・メタル・システムおよびDBシステムのOracle Database ApplianceでTDEキーがOracle Key Vaultに格納されたTDE対応データベースを管理する方法を説明します。 - BUIの使用によるOracle Key Vaultでのユーザーの作成
マルチユーザー・アクセス対応のOracle Database Applianceで、Oracle Key Vaultサーバー構成の権限があるユーザーを作成します。 - データベースのOracle Key Vaultエンドポイントの更新
Oracle Key Vaultサーバーが最新リリースに更新されたときやOracle Key Vaultサーバーで証明書が再生成されたときにOracle Database Appliance上でOracle Key Vaultクライアントを更新する方法について理解しましょう。 - Oracle Key Vaultを使用して構成されたTDE対応データベースの登録
Oracle Key Vaultキーストアを使用するがOracle Database Applianceツールを使用して作成されていないTDE対応データベースを登録できるようになりました。これらのデータベースをOracle Database Applianceに登録した後は、Oracle Database Applianceコマンドを使用してこれらのデータベースを管理できます。 - RMANを使用したOracle Key Vault TDEデータベースのリストアおよびデータベースの登録
TDEキーの格納にOracle Key Vaultを使用するTDE対応データベースの登録方法を理解しましょう。 - RMANを使用したソフトウェア・キーストアTDEデータベースのリストアおよびデータベースの登録
TDEキーの格納にソフトウェア・ウォレットを使用するTDE対応データベースの登録方法を理解しましょう。 - BUIを使用したOracle Key Vaultサーバー構成オブジェクトの作成
BUIを使用して、ベア・メタル・システムおよびDBシステムでTDEキーがOracle Key Vaultに格納されたTDE対応データベースをOracle Database Applianceに作成する方法を説明します。 - BUIを使用したOracle Key Vaultサーバー構成に対するアクセス権の付与および取消し
BUIを使用して、ベア・メタル・システムおよびDBシステムのOracle Database ApplianceでOracle Key Vaultサーバー構成へのアクセス権を付与および取り消す方法を説明します。 - BUIを使用したOracle Key Vaultサーバー構成操作の管理
ベア・メタル・システムおよびDBシステムのOracle Database ApplianceでOracle Key Vaultサーバー構成操作を管理する方法を説明します。 - ソフトウェア・キーストアを使用するTDE対応OracleデータベースからOracle Key Vaultキーストアを使用する別のTDE対応データベースへの表領域の移行
expdp/impdpトランスポータブル表領域機能の使用によって、ソフトウェア・キーストアを使用するTDE対応データベースから、キーストアとしてOracle Key Vaultを使用するように、表領域を移行する方法を理解しましょう。 - Oracle Database Applianceでのソフトウェア・キーストアからOracle Key Vaultキーストアへの手動移行
Oracle Database Appliance上で作成されたデータベースについて、表領域をソフトウェア・キーストアからOracle Key Vaultキーストアに移行する方法を理解しましょう - TDE対応データベースへのデータの手動による移行および暗号化
Oracle Database Applianceでトランスポータブル表領域をTDE対応データベースに移行する方法を説明します。
Oracle Database Applianceの透過的データベース暗号化(TDE)について
透過的データ暗号化(TDE)により、表および表領域に格納される機密データを暗号化できます。
データは暗号化された後、認可されているユーザーまたはアプリケーションによってアクセスされたときに、透過的に復号化されます。TDEは、ストレージ・メディアまたはデータ・ファイルが盗まれた場合に、メディアに格納されているデータ(保存データとも呼ばれる)を保護するために役立ちます。
Oracle Databaseは、認証、認可および監査のメカニズムを使用してデータベース内のデータを保護しますが、オペレーティング・システムのデータ・ファイルに格納されているデータは保護しません。これらのデータ・ファイルを保護するために、Oracle Databaseでは透過的データ暗号化(TDE)が提供されています。
TDEにより、データ・ファイルに格納されている機密データが暗号化されます。許可なく復号化されるのを防止するため、TDEによって暗号化キーはデータベース外部のキーストアと呼ばれるセキュリティ・モジュールに格納されます。
Oracle Database Applianceでは、ODACLIコマンドまたはBUIを使用して、TDE対応データベースの作成およびライフサイクル管理が可能です。ODACLIコマンドまたはBUIを使用して、TDE対応の単一インスタンス、Oracle RACまたはOracle RAC One Nodeデータベースを作成できます。ODACLIコマンドまたはBUIを使用して、TDEパスワードを変更し、データベースのキーを更新することもできます。ソフトウェア・キーストアを使用する場合、データベースとともにTDEウォレットをバックアップすることもできます。odacli irestore-databaseコマンドを使用して、TDEソフトウェア・ウォレットをリカバリし、データベースを新しいコピーとしてリストアすることもできます。
- ソフトウェア・キーストアに格納されたTDEキー: このタイプのTDE方式では、TDEキーはOracle Database Applianceのウォレットに格納されます。
- Oracle Key Vaultのウォレットに格納されたTDEキー: このタイプのTDE方式では、TDEキーはOracle Key Vaultのウォレットに格納されます。Oracle Key Vaultのユーザーの資格証明を指定しない場合は、Oracle Key Vaultにすでに作成されているエンドポイントを使用し、Oracle Database Applianceでデータベースを作成またはリストアするときにエンドポイントを直接指定できます。それ以外の場合は、Oracle Key Vaultユーザーの詳細を使用してOracle Database ApplianceでOracle Key Vaultサーバー構成を作成し、これらのユーザー資格証明を使用してOracle Database Applianceでデータベースを作成およびリストアできます。
TDEキーは、次のいずれかの方法でOracle Key Vaultキーストアを使用して構成できます:
- Oracle Key Vaultのユーザーの資格証明の使用: この構成では、TDEキーはOracle Key Vaultのウォレットに格納され、Oracle Key Vaultユーザー資格証明を介してアクセスされます。
- Oracle Key Vaultですでに作成されているエンドポイントおよびウォレットの使用: この構成では、TDEキーはOracle Key Vaultのウォレットに格納され、Oracle Key Vaultエンドポイントを介してアクセスされます。
ノート:
透過的データ暗号化(TDE)を有効にするには、Oracle Database 19c以降のOracle Database Enterprise Editionをデプロイする必要があります。透過的データ暗号化(TDE)は、Oracle Database Enterprise Editionで使用可能なアドバンスト・セキュリティ・オプション(ASO)です。関連項目:
Oracle Database Advanced Securityガイドの透過的データ暗号化の使用方法注意:
ソフトウェア・キーストア、またはOracle Key Vaultにすでに作成されているエンドポイントおよびウォレットを使用するOracle Key Vaultキーストアを使用して、データベースでTDEを有効にすると、TDEウォレットのパスワードを設定するよう求められます。セキュリティ準拠のための強力なパスワードを指定します。パスワードを慎重に設定し、データベース管理操作のために常にこのパスワードを使用できるようにします。プロンプトが表示されたときにTDEウォレット・パスワードを指定しないと、データベース表にアクセスできなくなります。親トピック: TDE対応Oracleデータベースの管理
Oracle Key Vaultについて
Oracle Key Vaultは、フォルト・トレラントで、可用性と拡張性が高い、セキュアな標準準拠のキーおよびシークレット管理アプライアンスであり、ここでセキュリティ・オブジェクトを格納、管理および共有できます。
Oracle Key Vaultの詳細は、Oracle Key Vaultのドキュメント(https://docs.oracle.com/en/database/oracle/key-vault/21.10/okvag/okv_intro.html#GUID-1C565FBE-BC21-4E76-B2A6-88A17F6649D7)を参照してください。
Oracle Database ApplianceでTDE対応データベース用のOracle Key VaultにTDEキーを格納する際に使用される用語
- ロール分離: データベース管理操作とTDEキー操作には異なるユーザーを割り当てることをお薦めします。Oracle Key Vaultサーバーの資格証明を持つデータベース管理ロールを保有するユーザーを指定しないでください。これにより、データ・ファイル・アクセス権を持つデータベース・ユーザーは、TDEウォレット・パスワードを知らずにデータベースを開くことができなくなります。このロール分離を設定するには、Oracle Database Applianceでマルチユーザー・アクセス機能を有効にします。マルチユーザー・アクセスの構成の詳細は、「Oracle Database Applianceでのマルチユーザー・アクセスの実装」を参照してください。Oracle Database Applianceでは、Oracle Key Vaultユーザーの資格証明をODA-DBユーザーと共有する必要はありません。ODA管理者はリソース(Oracle Key Vaultサーバー構成)のアクセス権を対象のDBユーザーに付与し、DBユーザーはTDE対応データベースの作成時にOracle Key Vaultサーバー構成を使用してTDEキーをOracle Key Vaultサーバーに格納できます。
- Oracle Key Vaultサーバー構成: この用語は、Oracle Key Vaultのメタデータを格納するOracle Database Applianceリソースを指します。Oracle Key Vaultサーバー構成には、Oracle Key VaultサーバーのTDEキーを管理するために作成されたユーザーの名前、Oracle Key VaultサーバーのIPアドレスまたはホスト名などの詳細が含まれます。Oracle Database Appliance上のOracle Key Vaultサーバー構成は、Oracle Key Vaultサーバー構成を区別するために名前で識別されます。この名前はOracle Database Applianceシステム内で一意であり、値は大/小文字が区別されます。Oracle Key Vaultサーバー構成を作成する際は、Oracle Key Vaultサーバーのユーザーの資格証明を指定する必要があります。このユーザーは、
Create Endpoint
権限のみを持つ最小権限ユーザーにすることをお薦めします。Oracle Key Vaultサーバー構成の作成時に指定するユーザー名およびパスワードは、Oracle Key Vaultサーバーのユーザーに対応します。このオブジェクトの作成時に指定したパスワードは、Oracle Database Applianceには格納されません。Oracle Key Vaultクライアント自動ログイン・ウォレットは、これらの資格証明を使用して作成され、Oracle Key Vaultサーバーへのすべてのリクエストでは、このクライアント自動ログイン・ウォレットを使用します。データベースは、必要なADMINISTER KEY MANAGEMENT SQLコマンドの自動ログイン・ウォレットを自動的に読み取ります。 - ODA-DBロールを持つユーザー: マルチユーザー・アクセス対応の環境またはパスワードなしのマルチユーザー・アクセス対応の環境でODA-DBロールを持つユーザーは、データベースを作成および保守できます。このユーザーにはODA-DBロールが付与され、作成、パッチ適用、変更、削除、バックアップ、リカバリなどのデータベース関連のすべての操作を実行する資格があります。これらの操作は、ユーザーに属するデータベースに制限されます。詳細は、このガイドの「Oracle Database Applianceでのマルチユーザー・アクセスの実装」を参照してください。
- Oracle Key Vaultユーザー: Oracle Key Vaultサーバー構成の作成時に指定するOracle Key Vaultのユーザー名およびパスワードは、Oracle Key Vaultサーバーの既存のユーザーおよびパスワードに対応している必要があります。そうでない場合、Oracle Key Vaultへのアクセスで障害が発生する可能性があります。このユーザーは、自身が作成したOracle Key Vaultサーバー構成オブジェクトに対して作成、削除、詳細表示およびリスト操作を実行することもできます。
- 仮想ウォレット: Oracle Key Vaultで作成された仮想ウォレットは、セキュアに格納する必要があるオブジェクト用のコンテナです。Oracle Key Vaultをキーストアとして使用するOracle Database Appliance上のTDE対応データベースの場合、データベースのTDEキーはこの仮想ウォレット内に格納されます。
キーがOracle Key Vaultに格納されたTDE対応データベースを構成するための要件
- Oracle Key Vaultサーバーのバージョンは21.10.0以降である必要があります。
- Oracle Database Applianceでネットワーク・タイム・プロトコルを設定することをお薦めします。Oracle Key Vaultとやり取りするデータベース操作は、Oracle Database ApplianceとOracle Key Vaultサーバーのクロックが同期していない場合、失敗します。時間がサーバー全体で一致していることを確認するか、Oracle Database Applianceでネットワーク・タイム・プロトコルを使用する必要があります。
- ベア・メタル・システムでOracle Database Applianceをプロビジョニングし、初期データベースの作成を選択する場合、Oracle Key Vaultを使用してTDEを構成した初期データベースを作成することはできません。これは、Oracle Key Vaultを使用してTDEキーを格納するTDEデータベースの作成には、Oracle Key Vaultサーバー構成がすでに存在する必要があるためです。DBシステムでOracle Key Vaultを使用してTDEが構成されたデータベースを作成するには、まず初期データベースなしでDBシステムを作成し、Oracle Key Vaultを使用したOracle Database ApplianceでのTDE対応データベースの作成の説明に従って、Oracle Key Vaultを使用してTDEが構成されたデータベースを作成します。
- マルチユーザー・アクセス対応システムで、Oracle Key Vaultのユーザーの資格証明を使用して、キーがOracle Key Vaultに格納されたTDE対応データベースを構成するには、権限
ODA-OKVCONFIGVIEWMGMT
およびODA-OKVCONFIGMODIFYMGMT
を保有するODA-OKVCONFIGADMIN
ロールを持つ新しいユーザーを作成する必要があります。ODA-OKVCONFIGVIEWMGMT
権限を使用すると、Oracle Key Vaultサーバー構成オブジェクトに対して詳細表示やリストなどの操作を実行できます。ODA-OKVCONFIGMODIFYMGMT
権限を使用すると、Oracle Key Vaultサーバー構成オブジェクトに対して作成や削除などの操作を実行できます。ODA-OKVCONFIGVIEWMGMT
権限はODA-DB
ロールに含まれ、ODA-DB
ロールを持つDBユーザーは、Oracle Key Vaultサーバー構成オブジェクトをリストや詳細表示したり、データベースの作成に必要なOracle Key Vaultサーバー構成オブジェクトを選択できます。マルチユーザー・アクセス対応でないシステムの場合、新しいユーザーを作成する必要はありません。
ユーザー資格証明を使用したTDE対応データベースの作成
Oracle Key Vaultのユーザーの資格証明を使用して、Oracle Database ApplianceでTDE対応データベースを作成する方法を説明します。この方法では、ベア・メタル・システムおよびDBシステムでのTDE対応データベースの作成がサポートされています。
ステップ1: Oracle Key Vaultのユーザーに対応するユーザーをOracle Database Applianceで作成。このステップは、マルチユーザー・アクセス対応システムにのみ適用されます。
ODA-OKVCONFIGADMIN
ロールを持つユーザーが存在しない場合、または作成するデータベースに別のユーザーを割り当てる場合は、ユーザーを作成します。
ODA-OKVCONFIGADMIN
ロールを持つ新しいユーザーを作成します。たとえば:odacli create-user -u okvuser1 -r ODA-OKVCONFIGADMIN
ユーザーが作成され、一時パスワードが割り当てられます。
- 正常に作成されると、ユーザー
okvuser1
は一時パスワードを使用してアプライアンスにログインできます。 okvuser1
はInactive
状態です。アプライアンスがマルチユーザー・アクセスを有効にして構成されている場合は、次のコマンドを使用してユーザーをアクティブ化します。アプライアンスがパスワードなしのマルチユーザー・アクセスで構成されている場合は、ユーザーをアクティブ化する必要はありません。マルチユーザー・アクセスの構成の詳細は、「Oracle Database Applianceでのマルチユーザー・アクセスの実装」を参照してください。odacli activate-user
パスワードを変更するように求められます。一時パスワードと新しいパスワードを入力し、新しいパスワードを確認します。
- 新しいパスワードを使用してアプライアンスにSSHで接続し、ODACLIコマンドを実行するか、ブラウザ・ユーザー・インタフェースに接続します。
ステップ2: Oracle Key Vaultサーバー構成の作成
- Oracle Key Vaultサーバー構成を作成するOracle Key Vaultユーザーは、Oracle Key Vaultサーバーで最小権限
Create Endpoint
を持つユーザーである必要があります。 - マルチユーザー・アクセス対応システムの場合、
ODA-OKVCONFIGADMIN
ロールを持つユーザー(okvuser1
など)としてログインします。マルチユーザー・アクセス対応でないシステムの場合は、root
ユーザーとしてログインします。 - Oracle Key Vaultパスワードを受け入れて確認するために、Oracle Key Vaultパスワードのプロンプトが2回表示されます。Oracle Key VaultサーバーのOracle Key Vaultユーザーのパスワードを指定します。これにより、ユーザーはOracle Key Vaultサーバーにログインできるようになります。
odacli create-okvserverconfig
コマンドの-u
オプションでユーザー名を指定します。Oracle Key Vaultサーバー構成の名前は大/小文字が区別され、Oracle Database Applianceで2つのOracle Key Vaultサーバー構成に同じ名前を付けることはできません。Oracle Key Vaultサーバー構成の長さは128文字を超えることはできません。odacli create-okvserverconfig -n okvobj1 -u epokvusr1 -ip xxx.xx.xxx.xxx Enter OKV user password : Retype OKV user password : Job details ---------------------------------------------------------------- ID: 730d2469-6efa-4ed1-8386-513e97c866ea Description: Create OKV Server Config: okvobj1 Status: Created Created: October 20, 2024 11:28:39 AM PDT Message: Create OKV Server Config. Task Name Start Time End Time Status ---------------------------------------- ---------------------------------------- ---------------------------------------- ---------------- odacli describe-job -i 730d2469-6efa-4ed1-8386-513e97c866ea Job details ---------------------------------------------------------------- ID: 730d2469-6efa-4ed1-8386-513e97c866ea Description: Create OKV Server Config: okvobj1 Status: Success Created: October 20, 2024 11:28:39 AM PDT Message: Create OKV Server Config. Task Name Node Name Start Time End Time Status ---------------------------------------- ------------------------- ---------------------------------------- ---------------------------------------- ---------------- OKV Password Store creation n1 October 20, 2024 11:28:39 AM PDT October 20, 2024 11:29:04 AM PDT Success Download of OKV REST package n1 October 20, 2024 11:28:42 AM PDT October 20, 2024 11:28:44 AM PDT Success Edit of OKV REST package n1 October 20, 2024 11:28:44 AM PDT October 20, 2024 11:28:45 AM PDT Success Generate OKV client wallets n1 October 20, 2024 11:28:45 AM PDT October 20, 2024 11:28:47 AM PDT Success
このコマンドは、指定されたサーバーのOracle Key Vaultサーバー・ユーザー
epokvusr1
に対して、Oracle Key Vaultサーバー構成okvobj1
を作成します。
ステップ3: マルチユーザー・アクセス対応システムのみでOracle Key Vaultサーバー構成を共有
- マルチユーザー・アクセス対応システムの場合、Oracle Key Vaultサーバー構成を使用してデータベースを作成するDBユーザーは、Oracle Key Vaultユーザーが作成したOracle Key Vaultサーバー構成への共有アクセス権を持っている必要があります。
odaadmin
ユーザーは、odacli grant-resource-access
コマンドを使用して、Oracle Key Vaultサーバー構成をDBユーザーと共有する必要があります。その後、DBユーザーは、Oracle Key Vaultサーバー構成を使用してデータベースを作成できます。odaadmin
ユーザーがokvobj1
リソースをDBユーザーdbusr1
と共有する例を次に示します:
Oracle Key Vaultサーバー構成のリソースIDを取得するには、su odaadmin odacli grant-resource-access -ri d017d35a-0757-460a-98f0-9f8d0944c872 -u dbusr1 Shared access of resource granted to user successfully...
odacli list-okvserverconfigs
コマンドを実行します。たとえば:odacli list-okvserverconfigs ID Name User Name IP address Host Name Description ---------------------------------------- -------------------- ---------------- ------------------- -------------------- ------------------- d017d35a-0757-460a-98f0-9f8d0944c872 okvobj1 epadmin xxx.xx.xx.xxx Null OKV Server for sales databases
ステップ4: データベースの作成
マルチユーザー・アクセス対応システムの場合、DBユーザーとしてログインし、オプション-t
、-osc
および-kt
を指定してodacli create-database
コマンドを使用して、Oracle Key Vaultサーバーを使用してTDEが構成されたデータベースを作成します。マルチユーザー・アクセス対応でないシステムの場合は、root
ユーザーとして同じコマンドを実行します。
odacli create-database
コマンドの-osc
オプションで値を指定します。DBユーザーは、odacli list-okvserverconfigs
コマンドで表示されるOracle Key Vaultサーバー構成のリストから、必要なOracle Key Vaultサーバー構成を選択できます。マルチユーザー・アクセス対応でないシステムの場合は、root
ユーザーとしてodacli list-okvserverconfigs
コマンドを実行します。
- オプション
-t
は、-osc
オプションを使用して指定されたOracle Key Vaultサーバー構成で表されるOracle Key Vault資格証明を使用して、データベースをTDEで構成する必要があることを示します。 - オプション
-kt
は、TDE構成で使用されるキーストアのタイプを指定します。キーストアの値は、software
またはokv
のいずれかです。デフォルトはsoftware
です。この値では大/小文字は区別されません。データベースのOKVServerConfigName
属性は、データベースの作成リクエストで指定されたOracle Key Vaultサーバー構成の名前に設定されます。 - TDEウォレットのパスワードはシステムによってランダムに生成されるため、指定する必要はありません。
警告:
パスワードは、Oracle Key Vaultにあるウォレットに格納されます。そのウォレットが失われると、データベース表にアクセスできなくなります。そのため、Oracle Key Vaultにあるウォレットを削除しないでください。kovobj1
で表されるOracle Key Vault資格証明を使用するデータベースkokvdb2
を作成する例を次に示します:
odacli create-database -n kokvdb2 -t -kt OKV -osc kovobj1
Enter SYS and SYSTEM user password:
Retype SYS and SYSTEM user password:
Job details
----------------------------------------------------------------
ID: 94a51f1a-2d4c-4eac-b0c2-7871d88c0df8
Description: Database service creation with DB name: kokvdb2
Status: Created
Created: July 15, 2024 3:00:53 PM CST
Message:
Task Name Start Time End Time Status
---------------------------------------- ---------------------------------------- ---------------------------------------- ----------------
odacli describe-job -i 94a51f1a-2d4c-4eac-b0c2-7871d88c0df8
Job details
----------------------------------------------------------------
ID: 94a51f1a-2d4c-4eac-b0c2-7871d88c0df8
Description: Database service creation with DB name: kokvdb2
Status: Success
Created: July 15, 2024 3:00:53 PM CST
Message:
Task Name Start Time End Time Status
---------------------------------------- ---------------------------------------- ---------------------------------------- ----------------
Validating dbHome available space July 15, 2024 3:01:19 PM CST July 15, 2024 3:01:19 PM CST Success
...
TDE configuration using OKV July 15, 2024 3:17:37 PM CST July 15, 2024 3:20:36 PM CST Success
TDE Wallet directory creation July 15, 2024 3:17:38 PM CST July 15, 2024 3:17:46 PM CST Success
Setting Database parameter for OKV July 15, 2024 3:17:46 PM CST July 15, 2024 3:19:07 PM CST Success
Auto login TDE Wallet creation July 15, 2024 3:19:07 PM CST July 15, 2024 3:19:09 PM CST Success
OKV TDE Wallet creation July 15, 2024 3:19:09 PM CST July 15, 2024 3:19:12 PM CST Success
OKV Endpoint configuration July 15, 2024 3:19:12 PM CST July 15, 2024 3:19:43 PM CST Success
Setting TDE Master Encryption Key July 15, 2024 3:19:43 PM CST July 15, 2024 3:20:13 PM CST Success
Create Users tablespace July 15, 2024 3:20:36 PM CST July 15, 2024 3:20:39 PM CST Success
Clear all listeners from Database July 15, 2024 3:20:39 PM CST July 15, 2024 3:20:40 PM CST Success
Copy Pwfile to Shared Storage July 15, 2024 3:20:43 PM CST July 15, 2024 3:20:47 PM CST Success
データベースが正常に作成されると、Oracle Key Vaultクライアント・ソフトウェアが/etc/OKV/db_unique_name/okv
ディレクトリにインストールされます。すべてのファイルの所有権はdb_user:oinstall
に設定され、権限は750に設定されます。自動ログインTDEウォレットは、/etc/OKV/db_unique_name/tde
および/etc/OKV/db_unique_name/tde_seps
ディレクトリに作成されます。これらのディレクトリの所有権はそれぞれdb_user:oinstall
に設定され、権限は750に設定されます。
Oracle Key VaultのエンドポイントとともにOracle Key Vaultを使用したTDE対応データベースの作成
Oracle Key Vaultにすでに存在するエンドポイントおよびウォレットを使用して、Oracle Database ApplianceでTDE対応データベースを作成する方法を説明します。この方法では、ベア・メタル・システムおよびDBシステムでのTDE対応データベースの作成がサポートされています。
ノート:
このOracle Database Applianceリリースでは、この機能はOracle RACデータベースとOracle単一インスタンス・データベースでのみサポートされています。この機能は、Oracle RAC One Nodeデータベースおよび高可用性が有効になっているOracle単一インスタンス・データベースでは使用できません。- Oracle Key Vaultにログインし、データベースに対応する仮想TDEウォレットを作成します。
- 各インスタンスに対応するエンドポイントを作成します。単一インスタンス・データベースの場合はエンドポイントを1つ作成し、Oracle RACデータベースの場合はエンドポイントを2つ作成する必要があります。
- 作成したエンドポイントのデフォルト・ウォレットを設定します。
- 各エンドポイントに対応する
okvclient.jar
ファイルをダウンロードします。単一インスタンス・データベースの場合はファイルを1つダウンロードし、Oracle RACデータベースの場合は、ダウンロード可能なファイルが2つ(インスタンスごとに1つ)あります。
ステップ1: Oracle Key Vault RESTコマンドを使用したokvclient.jar
ファイルの取得
okvclient.jar
ファイルは、Oracle Key Vault RESTコマンドまたはOracle Key Vaultサーバー・ユーザー・インタフェースのいずれかを使用して作成できます。
okvclient.jar
ファイルを取得するには、oracle
ユーザーとしてログインし、次のステップに従います:
/tmp/work
や/tmp/work/client_wallet
などの作業ディレクトリを作成します。/tmp/work
ディレクトリに移動し、Oracle Key VaultサーバーからRESTfulサービス・ユーティリティをダウンロードして解凍します。このユーティリティを解凍すると、3つのディレクトリbin
、lib
およびconf
が表示されます。mkdir /tmp/work/ mkdir /tmp/work/client_wallet cd /tmp/work curl -Ok https://okv_server_ip:5695/okvrestclipackage.zip % Total % Received % Xferd Average Speed Time Time Time Current Dload Upload Total Spent Left Speed 100 3750k 100 3750k 0 0 2500k 0 0:00:01 0:00:01 --:--:-- 2500k
okvrestclipackage.zip
を解凍します。conf/okvrestcli.ini
を編集し、Oracle Key VaultサーバーのIPアドレス、ユーザー名およびクライアント自動ログイン・ウォレットが作成されるディレクトリへのパスを追加します。次の例では、/tmp/work/client_wallet
がクライアント自動ログイン・ウォレットが作成されるディレクトリ・パスです。#Provide absolute path for log_property, okv_client_config properties [Default] log_property=./conf/okvrestcli_logging.properties server=okv_server_ip okv_client_config=./conf/okvclient.ora user=okv_user client_wallet=/tmp/work/client_wallet
bin/okv
ファイルを編集し、行export OKV_RESTCLI_CONFIG=$OKV_RESTCLI_DIR/conf/okvrestcli.ini
のコメントを解除し、JAVA_HOME
変数も設定します:#!/bin/bash export OKV_RESTCLI_DIR=$(dirname "${0}")/.. export OKV_RESTCLI_CONFIG=$OKV_RESTCLI_DIR/conf/okvrestcli.ini export JAVA_HOME=/opt/oracle/dcs/java/1.8.0_xxx if [ -z "$JAVA_HOME" ] then echo "JAVA_HOME environment variable is not set." exit 1 fi if [ -z "$OKV_RESTCLI_CONFIG" ] then echo "OKV_RESTCLI_CONFIG environment variable is not set." exit 1 fi export OKV_RESTCLI_JAR=$OKV_RESTCLI_DIR/lib/okvrestcli.jar $JAVA_HOME/bin/java -jar $OKV_RESTCLI_JAR "$@"
- クライアント自動ログイン・ウォレットを生成します。Oracle Key Vaultユーザー・パスワードの入力を求められます。
/tmp/work/bin/okv admin client-wallet add --client-wallet /tmp/work/client_wallet --wallet-user okv_user Password:
- Oracle Key Vaultユーザー・インタフェースを使用してTDEウォレットがまだ作成されていない場合は、データベースに対応するTDEウォレットを作成します。
/tmp/work/bin/okv manage-access wallet create --wallet wallet_name --unique FALSE
- ウォレットに対応するエンドポイントを作成します。Oracle RACデータベースの場合、2つのエンドポイントを作成します。エンドポイントは、Oracle Key Vaultユーザー・インタフェースを使用してまだ作成されていない場合にのみ作成します。
/tmp/work/bin/okv admin endpoint create --endpoint endpoint_name --type ORACLE_DB --platform LINUX64 --strict-ip-check TRUE
- エンドポイントのデフォルト・ウォレットを設定します。Oracle RACデータベースの場合、両方のエンドポイントのデフォルト・ウォレットは同じTDEウォレットである必要があります。デフォルト・ウォレットは、Oracle Key Vaultユーザー・インタフェースを使用してまだ設定されていない場合にのみ設定します。
/tmp/work/bin/okv manage-access wallet set-default --wallet wallet_name --endpoint endpoint_name
okvclient.jar
コマンドをダウンロードします。Oracle RACデータベースの場合、両方のエンドポイントに対応するokvclient.jar
をダウンロードする必要があります。ダウンロードが完了したら、リモート・インスタンスに対応するokvclient.jar
をリモート・ノードにコピーします。/tmp/work/bin/okv admin endpoint download --endpoint <endpoint_name> --location <location>
- エンドポイントのダウンロード中に、次のように
Endpoint token is already consumed
メッセージが表示される場合は、エンドポイントを再エンロールします。/tmp/work/bin/okv admin endpoint download --endpoint endpoint_name --location location /tmp/work/log/okv0.log.0 (Permission denied) { "result" : "Failure", "message" : "Endpoint token is already consumed" } /tmp/work/bin/okv admin endpoint re-enroll --endpoint <endpoint_name> /tmp/work/log/okv0.log.0 (Permission denied) { "result" : "Success" }
ステップ2: データベースの作成
- マルチユーザー・アクセス対応システムとパスワードなしのマルチユーザー・アクセス・システムの場合、DBユーザーとしてログインし、
odacli create-database
コマンドを実行します。マルチユーザー・アクセス対応でないシステムの場合は、root
ユーザーとしてログインし、odacli create-database
コマンドを実行します。オプション
--enable-tde/-t
は、データベースをTDEで構成する必要があることを示します。オプション--keystore-type/-kt
は、TDE構成で使用するキーストアのタイプを指定します。オプション--okvclient-path/-ocp
は、エンドポイントに対応するokvclient.jar
ファイルへの絶対パスを指定します。単一インスタンス・データベースの場合、オプション
--okvclient-path/-ocp
は1つの値のみを取ります。Oracle RACデータベースの場合、オプション--okvclient-path/-ocp
は各インスタンスに対応する2つの値を取ります。値はカンマで区切る必要があります。最初のパスはローカル・インスタンスに対応し、2番目のパスはリモート・インスタンスに対応しています。TDEパスワードの入力を求められます。データベースが正常に作成されると、Oracle Key Vaultクライアント・ソフトウェアが
Oracle Key Vaultサーバー構成オブジェクトを使用せずに、/etc/OKV/db_unique_name/okv
ディレクトリにインストールされます。ローカルの自動ログインTDEウォレットが/etc/OKV/db_unique_name/tde
ディレクトリに作成されます。ソースの場所にあるokvclient.jar
ファイルが削除されます。okvdb
という名前の単一インスタンス・データベースを作成する例を次に示します:
Oracle Key Vaultサーバー構成オブジェクトを使用せずに、odacli create-database -n okvdb -y SI -t -kt OKV -ocp /tmp/okvclient.jar Enter SYS and SYSTEM user password: Retype SYS and SYSTEM user password: Enter TDE wallet password: Retype TDE wallet password: Job details ---------------------------------------------------------------- ID: 94a51f1a-2d4c-4eac-b0c2-7871d88c0df8 Description: Database service creation with DB name: okvdb Status: Created Created: July 15, 2024 3:00:53 PM CST Message: Task Name Start Time End Time Status ---------------------------------------- ---------------------------------------- ---------------------------------------- ---------------- odacli describe-job -i 94a51f1a-2d4c-4eac-b0c2-7871d88c0df8 Job details ---------------------------------------------------------------- ID: 94a51f1a-2d4c-4eac-b0c2-7871d88c0df8 Description: Database service creation with DB name: okvdb Status: Success Created: July 15, 2024 3:00:53 PM CST Message: Task Name Start Time End Time Status ---------------------------------------- ---------------------------------------- ---------------------------------------- ---------------- Validating dbHome available space July 15, 2024 3:01:19 PM CST July 15, 2024 3:01:19 PM CST Success ... TDE configuration using OKV July 15, 2024 3:17:37 PM CST July 15, 2024 3:20:36 PM CST Success TDE Wallet directory creation July 15, 2024 3:17:38 PM CST July 15, 2024 3:17:46 PM CST Success Setting Database parameter for OKV July 15, 2024 3:17:46 PM CST July 15, 2024 3:19:07 PM CST Success Auto login TDE Wallet creation July 15, 2024 3:19:07 PM CST July 15, 2024 3:19:09 PM CST Success Installing the OKV client software July 15, 2024 3:19:09 PM CST July 15, 2024 3:19:42 PM CST Success Setting TDE Master Encryption Key July 15, 2024 3:19:43 PM CST July 15, 2024 3:20:13 PM CST Success Create Users tablespace July 15, 2024 3:20:36 PM CST July 15, 2024 3:20:39 PM CST Success Clear all listeners from Database July 15, 2024 3:20:39 PM CST July 15, 2024 3:20:40 PM CST Success Copy Pwfile to Shared Storage July 15, 2024 3:20:43 PM CST July 15, 2024 3:20:47 PM CST Success
okvdbrac
という名前のOracle RACデータベースを作成する例を次に示します。リクエストでは、先にローカル・データベース・インスタンスのokvclient.jar
ファイルへのパスを指定し、その後にリモート・データベース・インスタンスのokvclient.jar
ファイルへのパスを指定します。odacli create-database -n okvdb -y RAC -t -kt OKV -ocp /tmp/dir1/okvclient.jar,/tmp/dir2/okvclient.jar Enter SYS and SYSTEM user password: Retype SYS and SYSTEM user password: Enter TDE wallet password: Retype TDE wallet password: Job details ---------------------------------------------------------------- ID: cb611ec2-ff87-44f9-a79b-3ab1a290644f Description: Database service creation with DB name: okvdbrac Status: Created Created: October 20, 2024 6:13:28 AM PDT Message: Task Name Start Time End Time Status ---------------------------------------- ---------------------------------------- ---------------------------------------- ---------------- odacli describe-job -i cb611ec2-ff87-44f9-a79b-3ab1a290644f Job details ---------------------------------------------------------------- ID: cb611ec2-ff87-44f9-a79b-3ab1a290644f Description: Database service creation with DB name: okvdbrac Status: Success Created: October 20, 2024 6:13:28 AM PDT Message: Task Name Node Name Start Time End Time Status ---------------------------------------- ------------------------- ---------------------------------------- ---------------------------------------- ---------------- Validating dbHome available space n1 October 20, 2024 6:13:49 AM PDT October 20, 2024 6:13:49 AM PDT Success Validating dbHome available space n2 October 20, 2024 6:13:49 AM PDT October 20, 2024 6:13:49 AM PDT Success Setting up SSH equivalence n1 October 20, 2024 6:13:51 AM PDT October 20, 2024 6:13:54 AM PDT Success Setting up SSH equivalence n1 October 20, 2024 6:13:54 AM PDT October 20, 2024 6:13:57 AM PDT Success Creating ACFS database home n1 October 20, 2024 6:13:58 AM PDT October 20, 2024 6:13:58 AM PDT Success Validating dbHome available space n1 October 20, 2024 6:13:59 AM PDT October 20, 2024 6:13:59 AM PDT Success . . . Setting TDE Master Encryption Key n1 October 20, 2024 6:34:15 AM PDT October 20, 2024 6:34:56 AM PDT Success Create Users tablespace n1 October 20, 2024 6:34:57 AM PDT October 20, 2024 6:34:59 AM PDT Success Clear all listeners from Database n1 October 20, 2024 6:35:00 AM PDT October 20, 2024 6:35:01 AM PDT Success Deleting OKV Client Software Jar n1 October 20, 2024 6:35:03 AM PDT October 20, 2024 6:35:04 AM PDT Success Deleting OKV Client Software Jar n2 October 20, 2024 6:35:04 AM PDT October 20, 2024 6:35:04 AM PDT Success Encrypt all Tablespaces n1 October 20, 2024 6:35:04 AM PDT October 20, 2024 6:36:15 AM PDT Success
ODACLIコマンドを使用したOracle Key Vaultサーバー構成操作の管理
ベア・メタル・システムおよびDBシステムのOracle Database ApplianceでOracle Key Vaultサーバー構成操作を管理する方法を説明します。
Oracle Key Vaultサーバー構成のリスト:
odacli list-okvserverconfigs
コマンドを使用して、すべてのOracle Key Vaultサーバー構成を表示します。odacli list-okvserverconfigs
ID Name User Name IP address Host Name Description
---------------------------------------- -------------------- ---------------- ------------------- -------------------- -------------------
d017d35a-0757-460a-98f0-9f8d0944c872 okvobj1 epadmin xxx.xx.xx.xxx Null OKV server for Sales database
b6336173-666b-4d81-88bd-5ae384419114 okvobj2 epadmin2 xxx.xx.xx.xxx Null OKV server for Sales database
Oracle Key Vaultサーバー構成の詳細表示:
odacli describe-okvserverconfig
コマンドを使用して、1つのOracle Key Vaultサーバー構成を表示します。
odacli describe-okvserverconfig -n dokvobj1
OKV Server Config details
----------------------------------------------------------------
ID: c196bd0a-4a42-43a6-8578-9929ceb28525
Name: dokvobj1
UserName: user1
IP Address: xxx.xxx.xx.xxx
Host Name:
Description: OKV server config for Sales
CreatedTime: October 4, 2024 9:41:43 AM HKT
UpdatedTime: October 4, 2024 9:42:10 AM HKT
State: CONFIGURED
Oracle Key Vaultサーバー構成の削除:
odacli delete-okvserverconfig
コマンドを使用して、Oracle Key Vaultサーバー構成を削除します。Oracle Key Vaultサーバー構成を削除できるのは、Oracle Key Vaultサーバー構成を使用しているすべてのデータベースがすでに削除されている場合のみです。odacli delete-okvserverconfig -n okvobj1
Job details
----------------------------------------------------------------
ID: 7446c9b4-a927-431f-8e0b-099eec8116e7
Description: Delete OKV Server Config: dokvobj1
Status: Running
Created: October 4, 2024 9:44:29 AM HKT
Message: Delete OKV Server Config
Task Name Start Time End Time Status
---------------------------------------- ---------------------------------------- ---------------------------------------- ----------------
OKV Password Store deletion October 4, 2024 9:44:29 AM HKT Running
odacli describe-job -i 7446c9b4-a927-431f-8e0b-099eec8116e7
Job details
----------------------------------------------------------------
ID: 7446c9b4-a927-431f-8e0b-099eec8116e7
Description: Delete OKV Server Config: dokvobj1
Status: Success
Created: October 4, 2024 9:44:29 AM HKT
Message: Delete OKV Server Config
Task Name Node Name Start Time End Time Status
---------------------------------------- ------------------------- ---------------------------------------- ---------------------------------------- ----------------
OKV Password Store deletion oda1 October 4, 2024 9:44:29 AM HKT October 4, 2024 9:44:45 AM HKT Success
OKV Server Config directory deletion oda1 October 4, 2024 9:44:45 AM HKT October 4, 2024 9:44:45 AM HKT Success
OKV Server Config deletion oda1 October 4, 2024 9:44:45 AM HKT October 4, 2024 9:44:46 AM HKT Success
TDEキーがOracle Key Vaultに格納されたTDE対応データベースに対するデータベース操作の管理
ベア・メタル・システムおよびDBシステムのOracle Database ApplianceでTDEキーがOracle Key Vaultに格納されたTDE対応データベースを管理する方法を説明します。
Oracle Database Applianceベア・メタル・システムおよびDBシステムのOracle Key Vaultで、TDE対応データベースに対してTDEマスター暗号化キーのキー更新、リストア、削除、データベースのバックアップおよびリカバリの実行、Oracle Data Guardの構成を行うことができます。
- TDE対応データベースのパスワードの変更
Oracle Key Vaultを使用してTDEキーを格納するベア・メタル・システムおよびDBシステムのOracle Database Applianceで、TDE対応データベースのパスワードを変更する方法を説明します。 - TDE対応データベースのTDEマスター暗号化キーのキー更新
ベア・メタル・システムおよびDBシステムのOracle Database Applianceで、Oracle Key Vaultを使用してTDEキーを格納するTDE対応データベースのTDEマスター暗号化キーをキー更新する方法を説明します。 - TDE対応データベースのバックアップおよびリカバリの実行
ベア・メタル・システムおよびDBシステムのOracle Database ApplianceでTDEキーがOracle Key Vaultに格納されたTDE対応データベースをバックアップおよびリカバリする方法を説明します。 - Oracle Key Vaultユーザー資格証明を使用したTDE対応データベースのリストア
Oracle Key Vaultのユーザーの資格証明を使用して、Oracle Database Applianceベア・メタル・システムおよびDBシステムで、データベース・バックアップを使用してTDE対応データベースをリストアする方法を説明します。 - Oracle Key Vaultで手動で作成したエンドポイントおよびウォレットを使用したTDE対応データベースのリストア
Oracle Key Vaultで手動で作成したエンドポイントおよびウォレットを使用して、Oracle Database ApplianceでTDE対応データベースをリストアする方法を説明します。この方法では、ベア・メタル・システムおよびDBシステムでのTDE対応データベースの作成がサポートされています。 - TDE対応データベースの削除
ベア・メタル・システムおよびDBシステムのOracle Database Applianceで、Oracle Key Vaultを使用してTDEキーを格納するTDE対応データベースを削除する方法を説明します。
親トピック: TDE対応Oracleデータベースの管理
TDE対応データベースのパスワードの変更
Oracle Key Vaultを使用してTDEキーを格納するベア・メタル・システムおよびDBシステムのOracle Database Applianceで、TDE対応データベースのパスワードを変更する方法を説明します。
Oracle Key Vaultでユーザーの資格証明を使用するOracle Database ApplianceのTDE対応データベースのパスワードの変更
odacli modify-database
コマンドをオプション--change-tde-password,-ctp
とともに使用します。新しいパスワードはランダムに生成され、Oracle Key Vaultサーバーに安全に格納され、古いTDEパスワードを置き換えます。たとえば:odacli modify-database -n db3 -ctp
Job details
----------------------------------------------------------------
ID: b6d0f4c2-976a-42b3-a32d-6cfc7848375d
Description: Modify database: db3
Status: Success
Created: February 24, 2025 08:50:08 UTC
Message: Modify database
Task Name Node Name Start Time End Time Status
---------------------------------------- ------------------------- ---------------------------------------- ---------------------------------------- ----------------
Re-enroll and Provision of Endpoint n1 February 24, 2025 08:50:14 UTC February 24, 2025 08:50:30 UTC Success
Save the new TDE password using a n1 February 24, 2025 08:50:30 UTC February 24, 2025 08:50:35 UTC Success
temporary custom attribute on OKV
TDE Wallet closure n1 February 24, 2025 08:50:35 UTC February 24, 2025 08:50:43 UTC Success
TDE Wallet closure n2 February 24, 2025 08:50:43 UTC February 24, 2025 08:50:45 UTC Success
Change the TDE password in local wallet n1 February 24, 2025 08:50:45 UTC February 24, 2025 08:51:06 UTC Success
Auto login TDE Wallet creation n1 February 24, 2025 08:51:06 UTC February 24, 2025 08:51:12 UTC Success
Re-enroll and Provision of Endpoint n2 February 24, 2025 08:51:12 UTC February 24, 2025 08:51:29 UTC Success
Change the TDE password in local wallet n2 February 24, 2025 08:51:29 UTC February 24, 2025 08:51:49 UTC Success
Auto login TDE Wallet creation n1 February 24, 2025 08:51:49 UTC February 24, 2025 08:51:54 UTC Success
Save new TDE password on OKV n2 February 24, 2025 08:51:54 UTC February 24, 2025 08:52:04 UTC Success
Delete the temporary custom attribute n2 February 24, 2025 08:52:04 UTC February 24, 2025 08:52:07 UTC Success
on OKV
Deleting OKV Client Software Jar n2 February 24, 2025 08:52:08 UTC February 24, 2025 08:52:08 UTC Success
Database stop (Srvctl) n1 February 24, 2025 08:52:08 UTC February 24, 2025 08:52:48 UTC Success
Database start (Srvctl) n1 February 24, 2025 08:52:48 UTC February 24, 2025 08:53:56 UTC Success
Checking the TDE wallet status n1 February 24, 2025 08:53:56 UTC February 24, 2025 08:53:59 UTC Success
Oracle Key Vaultにすでに存在するエンドポイントおよびウォレットを使用するOracle Database Appliance上のTDE対応データベースのパスワードの変更
odacli modify-database
コマンドをオプション--change-tde-password,-ctp
とともに使用します。Oracle Key Vaultにすでに存在するエンドポイントおよびウォレットを使用するOracle Database Appliance上のTDE対応データベースの場合、パスワード変更操作中にパスワードを指定するよう求められます。たとえば、Oracle RACデータベースの場合:odacli modify-database -n db14 -ctp
Enter the current TDE password:
Enter the new TDE password:
Re-enter the new TDE password:
Job details
----------------------------------------------------------------
ID: aa2a90db-ab9d-4b10-b9cb-4e23fb38844a
Description: Modify database: okvdb22
Status: Success
Created: May 15, 2025 17:29:24 UTC
Message: Modify database
Task Name Node Name Start Time End Time Status
---------------------------------------- ------------------------- ---------------------------------------- ---------------------------------------- ----------------
TDE Wallet closure n1 May 15, 2025 17:29:28 UTC May 15, 2025 17:29:30 UTC Success
Change the TDE password in local wallet n1 May 15, 2025 17:29:30 UTC May 15, 2025 17:29:31 UTC Success
TDE Wallet closure n2 May 15, 2025 17:29:30 UTC May 15, 2025 17:29:30 UTC Success
Auto login TDE Wallet creation n1 May 15, 2025 17:29:31 UTC May 15, 2025 17:29:31 UTC Success
Change the TDE password in local wallet n2 May 15, 2025 17:29:31 UTC May 15, 2025 17:29:32 UTC Success
Auto login TDE Wallet creation n1 May 15, 2025 17:29:32 UTC May 15, 2025 17:29:32 UTC Success
Database stop (Srvctl) n1 May 15, 2025 17:29:32 UTC May 15, 2025 17:30:15 UTC Success
Database start (Srvctl) n1 May 15, 2025 17:30:15 UTC May 15, 2025 17:30:48 UTC Success
Checking the TDE wallet status n1 May 15, 2025 17:30:48 UTC May 15, 2025 17:30:48 UTC Success
TDE対応データベースのTDEマスター暗号化キーのキー更新
ベア・メタル・システムおよびDBシステムのOracle Database Applianceで、Oracle Key Vaultを使用してTDEキーを格納するTDE対応データベースのTDEマスター暗号化キーをキー更新する方法を説明します。
odacli modify-database
コマンドを使用して、オプション-rkt
を指定してTDEマスター暗号化キーのキー更新を実行します。Oracle Key Vaultを使用して構成されたTDEの場合、キー更新操作中にパスワードを指定するよう求められます。たとえば:odacli modify-database -n kokvdb2 -rkt
{
"jobId" : "dbedf89d-b60f-4209-bbcf-0db61e4eb350",
"status" : "Created",
"message" : "Modify database",
"reports" : [ ],
"createTimestamp" : "July 15, 2024 15:56:01 PM CST",
"resourceList" : [ {
"resourceId" : "7a1c996b-ee8d-49bc-8759-cbbfcee3bcce",
"resourceType" : null,
"resourceNewType" : "Db",
"jobId" : "dbedf89d-b60f-4209-bbcf-0db61e4eb350",
"updatedTime" : null
} ],
"description" : "Modify database: kokvdb2",
"updatedTime" : "July 15, 2024 15:56:01 PM CST",
"jobType" : null
}
odacli describe-job -i dbedf89d-b60f-4209-bbcf-0db61e4eb350
Job details
----------------------------------------------------------------
ID: dbedf89d-b60f-4209-bbcf-0db61e4eb350
Description: Modify database: kokvdb2
Status: Success
Created: July 15, 2024 3:56:01 PM CST
Message: Modify database
Task Name Start Time End Time Status
---------------------------------------- ---------------------------------------- ---------------------------------------- ----------------
TDE Wallet Re-Key July 15, 2024 3:56:04 PM CST July 15, 2024 3:56:12 PM CST Success
TDE対応データベースのバックアップおよびリカバリの実行
ベア・メタル・システムおよびDBシステムのOracle Database ApplianceでTDEキーがOracle Key Vaultに格納されたTDE対応データベースをバックアップおよびリカバリする方法を説明します。
TDEキーがOracle Key Vaultに格納されたTDE対応データベースのバックアップの実行
odacli create-backup
コマンドを使用して、TDEキーがOracle Key Vaultに格納されたTDE対応データベースをバックアップします。TDEウォレットはOracle Database Applianceには存在しませんが、Oracle Key Vaultサーバーに存在するため、データベース・バックアップではバックアップされません。その結果、データベース・バックアップ・レポートのTDEウォレット・バックアップ場所の属性の値はnullに設定されます。
[odaadmin@oda1 bin]$ odacli describe-job -i be94d1f7-ad6e-48a5-94a3-f0a52578048b
Job details
----------------------------------------------------------------
ID: be94d1f7-ad6e-48a5-94a3-f0a52578048b
Description: Create Regular-L0 Backup[TAG:auto][Db:db15][NFS:/nfs_backup/orabackups/dbsfb225975e/database/1851419729/db15]
Status: Success
Created: March 26, 2024 4:14:19 AM PDT
Message:
Task Name Node Name Start Time End Time Status
---------------------------------------- ------------ ---------------------------------------- -------------------------------- ------
Validate backup config oda1 March 26, 2024 4:14:21 AM PDT March 26, 2024 4:14:21 AM PDT Success
NFS location existence validation oda1 March 26, 2024 4:14:21 AM PDT March 26, 2024 4:14:22 AM PDT Success
Recovery Window validation oda1 March 26, 2024 4:14:22 AM PDT March 26, 2024 4:14:24 AM PDT Success
Archivelog deletion policy configuration oda1 March 26, 2024 4:14:24 AM PDT March 26, 2024 4:14:26 AM PDT Success
Database backup oda1 March 26, 2024 4:14:26 AM PDT March 26, 2024 4:15:21 AM PDT Success
[odaadmin@oda1 bin]$ odacli describe-backupreport -i d2326683-9766-4933-bee1-a2b59c9d7e9e
{
"id" : "d2326683-9766-4933-bee1-a2b59c9d7e9e",
"dbResId" : "96a98156-b657-403e-a87c-357c2069c285",
"tag" : "auto",
"dbId" : "1851419729",
"dbName" : "db15",
"dbUniqueName" : "db15",
"backupType" : "Regular-L0",
"keepDays" : null,
"backupLocation" : "/nfs_backup/orabackups/dbsfb225975e/database/1851419729/db15/db",
"cfBackupHandle" : "/nfs_backup/orabackups/dbsfb225975e/database/1851419729/db15/db/c-1851419729-20240326-03",
"spfBackupHandle" : "/nfs_backup/orabackups/dbsfb225975e/database/1851419729/db15/db/c-1851419729-20240326-03",
"pitrTimeStamp" : "March 26, 2024 04:15:06 AM PDT",
"pitrSCN" : "1675444",
"resetLogsTimeStamp" : "March 26, 2024 03:01:39 AM PDT",
"resetLogsSCN" : "1575481",
"oraHomeVersion" : "19.23.0.0.240116",
"sqlPatches" : "35926646,34774667,35943157",
"backupLogLoc" : "/nfs_backup/orabackups/dbsfb225975e/database/1851419729/db15/rmanlog/2024-03-26/rman_backup_auto_2024-03-26_04-14-29.0478.log",
"tdeWalletLoc" : null,
"dbConfigLoc" : "/nfs_backup/orabackups/dbsfb225975e/database/1851419729/db15/dbconfig/2024-03-26/DBCONFIG_auto_2024-03-26_04-15-19.0472.tar.gz",
"name" : "Backup_Report_db15",
"createTime" : "March 26, 2024 04:14:26 AM PDT",
"state" : {
"status" : "CONFIGURED"
},
"updatedTime" : "March 26, 2024 04:14:26 AM PDT",
"backupReportLogDetail" : "/nfs_backup/orabackups/dbsfb225975e/database/1851419729/db15/rmandetaillogreport/2024-03-26/rman_list_backup_detail_auto_2024-03-26_04-15-16.0129.log",
"dbInfo" : {
"dbClass" : "OLTP",
"dbType" : "RAC",
"dbShape" : "odb2",
"dbEdition" : "EE",
"dbStorage" : "ASM",
"dbRedundancy" : null,
"pdbName" : null,
"isCdb" : false
},
"dbDataSize" : "2441M",
"dbRedoSize" : "16403M",
"rmanBackupPieces" : "/nfs_backup/orabackups/dbsfb225975e/database/1851419729/db15/backuppieces/2024-03-26/backupPieces_auto_96a98156-b657-403e-a87c-357c2069c285_20240326041518.json",
"compressionAlgo" : "BASIC",
"cpuPool" : null,
"numberOfCores" : null,
"keystoreType" : "OKV",
}
OKV
の場合、odacli create-backup
コマンドでコンポーネントをtdewallet
として指定すると、エラーが発生します。[odaadmin@oda1 bin]$ odacli create-backup -n db15 -c tdewallet
DCS-10144:TDE wallet backup operation is not supported for TDE databases with OKV keystore type.
Oracle Key Vaultユーザーの資格証明とともにOracle Key Vaultを使用してTDEが構成されたデータベースのリカバリの実行
odacli recover-database
コマンドを使用して、TDEがOracle Key Vaultを使用して構成されたデータベースをリカバリします。たとえば、データベースkokvdb2
をリカバリするには、次のコマンドを実行します:odacli recover-database -n kokvdb2 -t latest
{
"jobId" : "8a50d65f-2269-41ff-b030-51fe4ecc82b5",
"status" : "Created",
"message" : null,
"reports" : [ ],
"createTimestamp" : "July 15, 2024 18:26:26 PM CST",
"resourceList" : [ ],
"description" : "Create recovery-latest for DB : kokvdb2",
"updatedTime" : "July 15, 2024 18:26:26 PM CST",
"jobType" : null
}
odacli describe-job -i 8a50d65f-2269-41ff-b030-51fe4ecc82b5
Job details
----------------------------------------------------------------
ID: 8a50d65f-2269-41ff-b030-51fe4ecc82b5
Description: Create recovery-latest for DB : kokvdb2
Status: Success
Created: July 15, 2024 6:26:26 PM CST
Message:
Task Name Start Time End Time Status
---------------------------------------- ---------------------------------------- ---------------------------------------- ----------------
Database recovery validation July 15, 2024 6:26:30 PM CST July 15, 2024 6:27:50 PM CST Success
Database recovery July 15, 2024 6:27:50 PM CST July 15, 2024 6:30:07 PM CST Success
Enable block change tracking July 15, 2024 6:30:07 PM CST July 15, 2024 6:30:12 PM CST Success
Database opening July 15, 2024 6:30:12 PM CST July 15, 2024 6:30:15 PM CST Success
Database restart July 15, 2024 6:30:15 PM CST July 15, 2024 6:31:31 PM CST Success
Recovery metadata persistence July 15, 2024 6:31:31 PM CST July 15, 2024 6:31:31 PM CST Success
OKV
の場合、odacli recover-database
コマンドでコンポーネントをtdewallet
として指定すると、エラーが発生します。[odaadmin@oda1 bin]$ odacli recover-database -n db15 -tl /nfs_backup/ewallet.p12 -t latest
DCS-10045:Validation error encountered: Usage of TDE wallet related parameters is not allowed for a TDE database with OKV keystore type.
[odaadmin@oda1 bin]$ odacli restore-tdewallet -n db15
Enter TDE wallet password:
DCS-10144:Restore TDE wallet operation is not supported for TDE databases with OKV keystore type.
Oracle Key VaultのエンドポイントとともにOracle Key Vaultを使用してTDEが構成されたデータベースのリカバリの実行
odacli recover-database
コマンドを実行すると、TDEパスワードを要求されます。データベース・リカバリの前に、キー管理の運用管理コマンドを使用してローカルの自動ログイン・ウォレットが再生成されます。データベース・リカバリ用のTDEパスワードを指定する必要があります。
odacli recover-database -n kokvdb2 -t latest
Enter the TDE password:
odacli describe-job -i 8a50d65f-2269-41ff-b030-51fe4ecc82b5
Job details
----------------------------------------------------------------
ID: 8a50d65f-2269-41ff-b030-51fe4ecc82b5
Description: Create recovery-latest for DB : kokvdb2
Status: Success
Created: July 15, 2024 6:26:26 PM CST
Message:
Task Name Start Time End Time Status
---------------------------------------- ---------------------------------------- ---------------------------------------- ----------------
Auto login TDE Wallet creation July 15, 2024 6:26:30 PM CST July 15, 2024 6:27:50 PM CST
Database recovery validation July 15, 2024 6:26:30 PM CST July 15, 2024 6:27:50 PM CST Success
Database recovery July 15, 2024 6:27:50 PM CST July 15, 2024 6:30:07 PM CST Success
Enable block change tracking July 15, 2024 6:30:07 PM CST July 15, 2024 6:30:12 PM CST Success
Database opening July 15, 2024 6:30:12 PM CST July 15, 2024 6:30:15 PM CST Success
Database restart July 15, 2024 6:30:15 PM CST July 15, 2024 6:31:31 PM CST Success
Recovery metadata persistance July 15, 2024 6:31:31 PM CST July 15, 2024 6:31:31 PM CST Success
データベース・リカバリ中のエラー
OKV
の場合、odacli recover-database
コマンドでコンポーネントをtdewallet
として指定すると、エラーが発生します。[odaadmin@oda1 bin]$ odacli recover-database -n db15 -tl /nfs_backup/ewallet.p12 -t latest
DCS-10045:Validation error encountered: Usage of TDE wallet related parameters is not allowed for a TDE database with OKV keystore type.
[odaadmin@oda1 bin]$ odacli restore-tdewallet -n db15
Enter TDE wallet password:
DCS-10144:Restore TDE wallet operation is not supported for TDE databases with OKV keystore type.
Oracle Key Vaultユーザー資格証明を使用したTDE対応データベースのリストア
Oracle Key Vaultのユーザーの資格証明を使用して、Oracle Database Applianceベア・メタル・システムおよびDBシステムで、データベース・バックアップを使用してTDE対応データベースをリストアする方法を説明します。
前提条件
- Oracle Data Guard構成でプライマリ・ロールを持つデータベースをリストアするには、リストア・コマンドを実行する前に、ターゲット・データベースのTDEウォレットをOracle Key Vaultサーバーに作成する必要があります。このTDEウォレットは、ソース・データベースのウォレットのコピーです。
- Oracle Data Guard構成でスタンバイ・ロールを持つデータベースをリストアするには、TDEウォレットのコピーを作成しないでください。プライマリ・データベースのTDEウォレットをスタンバイ・データベースに使用する必要があります。
ステップ1: Oracle Key Vaultユーザーの作成。このステップは、マルチユーザー・アクセス対応システムにのみ適用されます。
ODA-OKVCONFIGADMIN
ロールを持つユーザーが存在しない場合、またはリストアするデータベースに別のユーザーを割り当てる場合は、ユーザーを作成します。
ODA-OKVCONFIGADMIN
ロールを持つ新しいユーザーを作成します。たとえば:odacli create-user -u okvuser1 -r ODA-OKVCONFIGADMIN
ユーザーが作成され、一時パスワードが割り当てられます。
- 正常に作成されると、ユーザー
okvuser1
は一時パスワードを使用してアプライアンスにログインできます。 okvuser1
はInactive
状態です。アプライアンスがマルチユーザー・アクセスを有効にして構成されている場合は、次のコマンドを使用してユーザーをアクティブ化します。アプライアンスがパスワードなしのマルチユーザー・アクセスで構成されている場合は、ユーザーをアクティブ化する必要はありません。マルチユーザー・アクセスの構成の詳細は、「Oracle Database Applianceでのマルチユーザー・アクセスの実装」を参照してください。odacli activate-user
パスワードを変更するように求められます。一時パスワードと新しいパスワードを入力し、新しいパスワードを確認します。
- 新しいパスワードを使用してアプライアンスにSSHで接続し、ODACLIコマンドを実行するか、ブラウザ・ユーザー・インタフェースに接続します。
ステップ2: Oracle Key Vaultサーバー構成の作成
ターゲット・データベースのOracle Key Vaultサーバー構成を作成します。同じOracle Key Vaultサーバーに対するOracle Key Vaultサーバー構成がまだ存在していない場合にのみ、新しいOracle Key Vaultサーバー構成を作成します。構成がすでに存在する場合は、既存の構成を使用します。
- Oracle Key Vaultサーバー構成を作成するOracle Key Vaultユーザーは、Oracle Key Vaultサーバーで少なくとも
Create Endpoint
権限を持つユーザーである必要があります。 - マルチユーザー・アクセス対応システムの場合、
ODA-OKVCONFIGADMIN
ロールを持つユーザー(okvuser1
など)としてログインします。マルチユーザー・アクセス対応でないシステムの場合は、root
ユーザーとしてログインします。 - Oracle Key Vaultパスワードを受け入れて確認するために、Oracle Key Vaultパスワードのプロンプトが2回表示されます。これは、Oracle Key VaultサーバーのOracle Key Vaultユーザーのパスワードです。これにより、ユーザーはOracle Key Vaultサーバーにログインできるようになります。
odacli create-okvserverconfig
コマンドの-u
オプションでユーザー名を指定します。Oracle Key Vaultサーバー構成の名前は大/小文字が区別され、Oracle Database Applianceで2つのOracle Key Vaultサーバー構成に同じ名前を付けることはできません。Oracle Key Vaultサーバー構成の長さは128文字を超えることはできません。odacli create-okvserverconfig -n okvobj1 -u epokvusr1 -ip xxx.xx.xxx.xxx Enter OKV user password : Retype OKV user password : Job details ---------------------------------------------------------------- ID: 8878fc02-3d64-4519-bf52-fcb50839f89f Description: Create OKV Server Config: okvcfg5 Status: Success Created: October 14, 2024 14:04:29 UTC Message: Create OKV Server Config. Task Name Node Name Start Time End Time Status ---------------------------------------- ------------------------- ---------------------------------------- ---------------------------------------- ---------------- OKV Password Store creation oda1 October 14, 2024 14:04:29 UTC October 14, 2024 14:04:56 UTC Success Download of OKV REST package oda1 October 14, 2024 14:04:31 UTC October 14, 2024 14:04:32 UTC Success Edit of OKV REST package oda1 October 14, 2024 14:04:32 UTC October 14, 2024 14:04:32 UTC Success Generate OKV client wallets oda1 October 14, 2024 14:04:32 UTC October 14, 2024 14:04:35 UTC Success
このコマンドは、指定されたサーバーのOracle Key Vaultサーバー・ユーザー
epokvusr1
に対して、Oracle Key Vaultサーバー構成okvobj1
を作成します。
ステップ3: ODACLIコマンドを使用して、ソース・ウォレットからOracle Key Vaultサーバー上のターゲット・ウォレットにTDEキーをコピー
odacli copy-okvtdewallet
コマンドを使用して、TDEウォレットをOracle Key Vaultサーバーにコピーします。コマンドで、ソース・ウォレット名(--source-wallet-name | -swn
)、ターゲット・ウォレットのOracle Key Vaultサーバー構成オブジェクト名(--target-okvserverconfig | -tosc
)およびターゲット・ウォレット名(--target-wallet-name | -twn
)を指定します。ターゲット・ウォレット名(--target-wallet-name | -twn
)パラメータに指定した名前の新しいウォレットが、ターゲットのOracle Key Vaultサーバーに作成されます。このウォレットには、ソース・ウォレットからコピーしたTDEキーが含まれます。
ソース・ウォレットがターゲット・ウォレットとは異なるOracle Key Vaultサーバー上にある場合は、ソース・ウォレットのOracle Key Vaultサーバーの詳細(サーバーのホスト名(--source-hostname | -shn
)やIPアドレス(--source-ip | -sip
)、およびOracle Key Vaultサーバーのウォレットを所有するユーザーの名前(--source-username | -su
)など)を指定します。この場合、プロンプトが表示されたら、パスワードを指定する必要があります。これは、Oracle Key Vaultサーバーのソース・ウォレットを所有するOracle Key Vaultユーザーのパスワードです。マルチユーザー・アクセス対応システムの場合、Oracle Database ApplianceでOracle Key Vaultユーザーとしてこのコマンドを実行します。
TDEウォレットをコピーする場合、3つのシナリオがあります:
シナリオ1: 同じOracle Key Vaultサーバーに同じOracle Key VaultユーザーでTDEウォレットをコピーする
odacli copy-okvtdewallet -swn tdeokv_on_oda8m013-c -tosc okvobj1 -twn tdeokvss
Job details
----------------------------------------------------------------
ID: 50df7dcc-8e17-48db-9206-879c44e57c20
Description: Copy wallet in OKV server
Status: Success
Created: June 20, 2024 2:56:02 AM CST
Message:
Task Name Start Time End Time Status
---------------------------------------- ---------------------------------------- ---------------------------------------- ----------------
Creating a TDE wallet copy in the OKV June 20, 2024 2:56:03 AM CST June 20, 2024 2:57:17 AM CST Success
server
シナリオ2: 同じOracle Key VaultサーバーにTDEウォレットをコピーするが、異なるOracle Key Vaultユーザーを使用する
この場合、ソース・ウォレットとターゲット・ウォレットは同じOracle Key Vaultサーバー上にありますが、Oracle Key Vaultサーバーの異なるユーザーが所有します。Oracle Key Vaultのソース・ウォレットの所有者は、ODACLIコマンドを実行してウォレットをコピーする前に、ウォレットに対する読取りおよび管理アクセス権限をOracle Key Vaultのターゲット・ウォレットの所有者に付与する必要があります。
- Oracle Key Vaultサーバーにソース・ウォレットのOracle Key Vaultユーザーとしてログインします。
- 「Keys and Wallets」タブに移動します。ソース・ウォレットのチェック・ボックスを選択し、「Edit 」アイコンをクリックします。
- 「Wallet Access Settings」セクションに移動し、「Add」をクリックします。
- 「Type」ドロップダウン・リストで、「Users」を選択した後、ターゲット・ウォレットのOracle Key Vaultユーザーのチェック・ボックスを選択します。
- 「Access Level」セクションで、「Read Only」および「Manage Wallet」を選択します。
- 「Save」をクリックします。
odacli copy-okvtdewallet
コマンドを実行します。odacli copy-okvtdewallet -swn tdeokv_on_oda8m013-c -tosc okvobj2 -twn tdeokvdu
Job details
----------------------------------------------------------------
ID: 50df7dcc-8e17-48db-9206-879c44e57c20
Description: Copy wallet in OKV server
Status: Success
Created: June 20, 2024 2:56:02 AM CST
Message:
Task Name Start Time End Time Status
---------------------------------------- ---------------------------------------- ---------------------------------------- ----------------
Creating a TDE wallet copy in the OKV June 20, 2024 2:56:03 AM CST June 20, 2024 2:57:17 AM CST Success
server
シナリオ3: 異なるOracle Key VaultサーバーにTDEウォレットをコピーする
odacli copy-okvtdewallet
コマンドで、ソース・ウォレットのOracle Key Vaultサーバーの詳細を指定します。プロンプトが表示されたら、ソース・ウォレットのOracle Key Vaultユーザーのパスワードを指定します。たとえば:odacli copy-okvtdewallet -swn tdeokv_on_oda8m013-c -sip xxx.xx.x.xxx -su epokvusr1 -tosc okvobj3 -twn tdeokvds
Enter OKV user password:
Retype OKV user password:
Job details
----------------------------------------------------------------
ID: 50df7dcc-8e17-48db-9206-879c44e57c20
Description: Copy wallet in OKV server
Status: Success
Created: June 20, 2024 2:56:02 AM CST
Message:
Task Name Start Time End Time Status
---------------------------------------- ---------------------------------------- ---------------------------------------- ----------------
Creating a TDE wallet copy in the OKV June 20, 2024 2:56:03 AM CST June 20, 2024 2:57:17 AM CST Success
server
ステップ3の代替方法: Oracle Key Vaultユーザー・インタフェースを使用して、ソース・データベース・ウォレットからターゲット・データベース・ウォレットにTDEキーをコピー
- Oracle Key Vaultサーバーにログインします。
- 「Keys & Wallets」タブに移動します。
- Oracle Key Vaultユーザーには、ソース・データベース・ウォレットの「Access Settings」セクションからウォレットの読取り、書込みおよび管理権限が付与されている必要があります。
- 新しいウォレットを作成するには、「Create」をクリックします。
- ターゲット・データベースのウォレットの新しい名前を指定します。
- 新しいウォレットの作成時に、ソース・データベースのTDEキーをコピーします。「Add Wallet Contents」セクションでソース・データベースの名前を検索します。キーが表示されたら、データベースのすべての「TDE Master Encryption Key」チェック・ボックスを選択します。
- ウォレットを保存するには、「Save」をクリックします。
- このステップは、Oracle Key Vault管理者がOracle Key Vaultユーザーのウォレットを作成した場合にのみ実行します。作成後、管理者はウォレットに対する読取り/書込みおよびウォレット管理アクセス権をユーザーに必ず付与します。
- Oracle Key Vault管理者としてOracle Key Vaultサーバーにログインします。
- 「Keys & Wallets」タブで、新しく作成したウォレットのチェック・ボックスを選択し、ウォレットの「Edit」オプションをクリックします。
- 「Wallet Access Settings」で、「Add」をクリックします。
- 「Select Endpoint/User Group」セクションで、ドロップダウン・リストから「Users」を選択します。
- ウォレットへのアクセス権を付与するOracle Key Vaultユーザーのチェック・ボックスを選択します。
- 「Access Level」セクションで、「Read and Modify」および「Manage Wallet」オプションを選択します。
- ウォレットのアクセス権設定を保存するには、「Save」をクリックします。
ステップ4: TDEキーがOracle Key Vaultに格納されたTDE対応データベースのリストア
odacli irestore-database
コマンドを使用して、TDEキーがOracle Key Vaultに格納されたTDE対応データベースをリストアします。コマンドで、オプション--enable-tde
、--okv-server-config
、--okv-wallet-name
およびkeystore-type
を指定します。
オプション--enable-tde、-t
は、--okv-server-config
オプションで指定されたOracle Key Vaultサーバー構成を使用して、リストアされたデータベースをTDEで構成する必要があることを示します。このようなirestoreを実行されたデータベースのキーストアはOKV
に設定されます。リストアされたデータベース・オブジェクトのokvServerConfigName
属性は、irestoreリクエストで指定されたOracle Key Vaultサーバー構成の名前に設定されます。--okv-wallet-name
パラメータを使用して、ターゲット・データベースのウォレット名を指定します。このウォレットはOracle Key Vaultサーバーに存在する必要があり、TDEキーは、irestore操作を実行する前にウォレットにコピーする必要があります。
OKV
)をodacli irestore-database
コマンドに指定します:odacli irestore-database -r /tmp/db1Backupreport.json -t -osc okvobj1 -kt OKV -own db2_wallet -n okvdb15
Enter SYS and SYSTEM user password:
Enter SYS and SYSTEM user password:
Job details
----------------------------------------------------------------
ID: dc44f3f0-5af3-4402-ad23-e923e1446371
Description: Database service recovery with DB name: okvdb15
Status: Success
Created: July 5, 2024 6:54:00 AM EDT
Message:
Task Name Node Name Start Time End Time Status
---------------------------------------- ------------------------- ---------------------------------------- ---------------------------------------- ----------------
Check if cluster ware is running oda1 July 5, 2024 6:54:23 AM EDT July 5, 2024 6:54:23 AM EDT Success
Check if cluster ware is running oda2 July 5, 2024 6:54:23 AM EDT July 5, 2024 6:54:24 AM EDT Success
Creating DbStorage for DbRestore oda1 July 5, 2024 6:54:25 AM EDT July 5, 2024 6:54:42 AM EDT Success
Validating DiskSpace for DATA oda1 July 5, 2024 6:54:25 AM EDT July 5, 2024 6:54:27 AM EDT Success
Setting up SSH equivalence oda1 July 5, 2024 6:54:27 AM EDT July 5, 2024 6:54:34 AM EDT Success
Configuring user access to ACFS oda1 July 5, 2024 6:54:38 AM EDT July 5, 2024 6:54:39 AM EDT Success
filesystems for okvdb15
Audit directory creation oda1 July 5, 2024 6:54:40 AM EDT July 5, 2024 6:54:40 AM EDT Success
Audit directory creation oda2 July 5, 2024 6:54:41 AM EDT July 5, 2024 6:54:41 AM EDT Success
Configure TDE for RestoreDb TaskFlow oda1 July 5, 2024 6:54:46 AM EDT July 5, 2024 6:56:07 AM EDT Success
Auxiliary Instance Creation oda1 July 5, 2024 6:54:50 AM EDT July 5, 2024 6:55:30 AM EDT Success
TDE Wallet directory creation oda1 July 5, 2024 6:55:30 AM EDT July 5, 2024 6:55:31 AM EDT Success
OKV Endpoint configuration oda1 July 5, 2024 6:55:31 AM EDT July 5, 2024 6:56:02 AM EDT Success
Auto login TDE Wallet creation oda1 July 5, 2024 6:56:02 AM EDT July 5, 2024 6:56:04 AM EDT Success
Password based TDE Wallet open oda1 July 5, 2024 6:56:04 AM EDT July 5, 2024 6:56:07 AM EDT Success
Create pfile for Auxiliary Instance oda1 July 5, 2024 6:56:07 AM EDT July 5, 2024 6:56:08 AM EDT Success
Rman duplicate oda1 July 5, 2024 6:56:08 AM EDT July 5, 2024 7:01:22 AM EDT Success
Creating pfile from spfile oda1 July 5, 2024 7:01:23 AM EDT July 5, 2024 7:01:24 AM EDT Success
Set PFile Ownership oda1 July 5, 2024 7:01:24 AM EDT July 5, 2024 7:01:24 AM EDT Success
Customize Db Parameters oda1 July 5, 2024 7:01:25 AM EDT July 5, 2024 7:01:36 AM EDT Success
Shutdown And Start database oda1 July 5, 2024 7:01:36 AM EDT July 5, 2024 7:06:51 AM EDT Success
Create spfile for restore db oda1 July 5, 2024 7:06:51 AM EDT July 5, 2024 7:06:53 AM EDT Success
Set PFile Ownership oda1 July 5, 2024 7:06:53 AM EDT July 5, 2024 7:06:53 AM EDT Success
Shutdown And Mount database oda1 July 5, 2024 7:06:54 AM EDT July 5, 2024 7:08:22 AM EDT Success
Re-Create control file oda1 July 5, 2024 7:08:23 AM EDT July 5, 2024 7:09:21 AM EDT Success
Removing Disabled Redo Threads oda1 July 5, 2024 7:09:21 AM EDT July 5, 2024 7:09:23 AM EDT Success
Updating DB attributes oda1 July 5, 2024 7:09:23 AM EDT July 5, 2024 7:09:25 AM EDT Success
Register Database taskflow oda1 July 5, 2024 7:09:30 AM EDT July 5, 2024 7:14:51 AM EDT Success
Create SPFile in shared loc oda1 July 5, 2024 7:09:30 AM EDT July 5, 2024 7:09:40 AM EDT Success
Delete Local Spfile oda1 July 5, 2024 7:09:40 AM EDT July 5, 2024 7:09:41 AM EDT Success
Register DB with clusterware oda1 July 5, 2024 7:09:41 AM EDT July 5, 2024 7:11:19 AM EDT Success
Add Startup Trigger to Open all PDBS oda1 July 5, 2024 7:11:20 AM EDT July 5, 2024 7:11:20 AM EDT Success
Set SysPassword and Create PwFile oda1 July 5, 2024 7:11:21 AM EDT July 5, 2024 7:11:24 AM EDT Success
Enable block change tracking oda1 July 5, 2024 7:11:25 AM EDT July 5, 2024 7:11:37 AM EDT Success
Creating pfile oda1 July 5, 2024 7:11:37 AM EDT July 5, 2024 7:11:39 AM EDT Success
Updating db env oda1 July 5, 2024 7:11:39 AM EDT July 5, 2024 7:11:40 AM EDT Success
Enable DbSizing Template oda1 July 5, 2024 7:11:40 AM EDT July 5, 2024 7:13:14 AM EDT Success
Update Database Global Name oda1 July 5, 2024 7:13:14 AM EDT July 5, 2024 7:13:17 AM EDT Success
Create tns entry oda1 July 5, 2024 7:13:18 AM EDT July 5, 2024 7:13:19 AM EDT Success
Create tns entry oda2 July 5, 2024 7:13:19 AM EDT July 5, 2024 7:13:21 AM EDT Success
Running datapatch oda1 July 5, 2024 7:13:21 AM EDT July 5, 2024 7:13:52 AM EDT Success
Set CPU pool oda1 July 5, 2024 7:13:52 AM EDT July 5, 2024 7:13:52 AM EDT Success
Reset Associated Networks for Database oda1 July 5, 2024 7:14:54 AM EDT July 5, 2024 7:15:00 AM EDT Success
Reset Associated Networks oda2 July 5, 2024 7:15:00 AM EDT July 5, 2024 7:15:01 AM EDT Success
Set log_archive_dest for Database oda1 July 5, 2024 7:15:01 AM EDT July 5, 2024 7:15:07 AM EDT Success
Setting Database parameter for OKV oda1 July 5, 2024 7:15:07 AM EDT July 5, 2024 7:16:43 AM EDT Success
Enable New Tablespace Encryption oda1 July 5, 2024 7:16:45 AM EDT July 5, 2024 7:16:47 AM EDT Success
Copy Pwfile to Shared Storage oda1 July 5, 2024 7:16:47 AM EDT July 5, 2024 7:16:58 AM EDT Success
Configure All Candidate Nodes oda1 July 5, 2024 7:16:58 AM EDT July 5, 2024 7:17:01 AM EDT Success
odacli copy-okvtdewallet
コマンドを使用してソース・データベースのウォレットのTDEキーをコピーした後、odacli irestore-database
コマンドにターゲットのOracle Key Vaultウォレット名を指定します。
odacli irestore-database -r /tmp/db1Backupreport.json -t -osc okvobj1 -kt OKV -own db2_wallet
Enter SYS and SYSTEM user password:
Enter SYS and SYSTEM user password:
Oracle Key Vaultで手動で作成したエンドポイントおよびウォレットを使用したTDE対応データベースのリストア
Oracle Key Vaultで手動で作成したエンドポイントおよびウォレットを使用して、Oracle Database ApplianceでTDE対応データベースをリストアする方法を説明します。この方法では、ベア・メタル・システムおよびDBシステムでのTDE対応データベースの作成がサポートされています。
前提条件
- Oracle Data Guard構成でプライマリ・ロールを持つデータベースをリストアするには、リストア・コマンドを実行する前に、ターゲット・データベースのTDEウォレットをOracle Key Vaultサーバーに作成する必要があります。このTDEウォレットは、ソース・データベースのウォレットのコピーです。
- Oracle Data Guard構成でスタンバイ・ロールを持つデータベースをリストアするには、TDEウォレットのコピーを作成しないでください。プライマリ・データベースのTDEウォレットをスタンバイ・データベースに使用する必要があります。
- 作成したTDEウォレットは、作成したエンドポイントのデフォルト・ウォレットとして設定する必要があります。
- 各エンドポイントに対応する
okvclient.jar
ファイルをダウンロードし、データベースのリストア・リクエストを発行するOracle Database Applianceノードにコピーする必要があります。
ステップ1: Oracle Key Vaultユーザー・インタフェースを使用して、ソース・データベース・ウォレットからターゲット・データベース・ウォレットにTDEキーをコピー
- Oracle Key Vaultサーバーにログインします。
- 「Keys & Wallets」タブに移動します。
- Oracle Key Vaultユーザーには、ソース・データベース・ウォレットの「Access Settings」セクションからウォレットの読取り、書込みおよび管理権限が付与されている必要があります。
- 新しいウォレットを作成するには、「Create」をクリックします。
- ターゲット・データベースのウォレットの新しい名前を指定します。
- 新しいウォレットの作成時に、ソース・データベースのTDEキーをコピーします。「Add Wallet Contents」セクションでソース・データベースの名前を検索します。キーが表示されたら、データベースのすべての「TDE Master Encryption Key」チェック・ボックスを選択します。
- ウォレットを保存するには、「Save」をクリックします。
- このステップは、Oracle Key Vault管理者がOracle Key Vaultユーザーのウォレットを作成した場合にのみ実行します。作成後、管理者はウォレットに対する読取り/書込みおよびウォレット管理アクセス権をユーザーに必ず付与します。
- Oracle Key Vault管理者としてOracle Key Vaultサーバーにログインします。
- 「Keys & Wallets」タブで、新しく作成したウォレットのチェック・ボックスを選択し、ウォレットの「Edit」オプションをクリックします。
- 「Wallet Access Settings」で、「Add」をクリックします。
- 「Select Endpoint/User Group」セクションで、ドロップダウン・リストから「Users」を選択します。
- ウォレットへのアクセス権を付与するOracle Key Vaultユーザーのチェック・ボックスを選択します。
- 「Access Level」セクションで、「Read and Modify」および「Manage Wallet」オプションを選択します。
- ウォレットのアクセス権設定を保存するには、「Save」をクリックします。
ステップ2: エンドポイントの作成およびデフォルト・ウォレットの設定
- 各インスタンスに対応するエンドポイントを作成します。Oracle RACデータベースの場合、2つのインスタンスに対応する2つのエンドポイントを作成します。単一インスタンス・データベースの場合、1つのインスタンスに対応する1つのエンドポイントを作成します。
- Oracle Key Vaultホームページで、「Endpoints」タブに移動し、「Add」をクリックします。
- 「Endpoint Name」を指定します。「Type」に「Oracle Database」、「Platform」に「Linux」を選択し、「Register」をクリックします。
- 「Default Wallet」ページで、「Choose Wallet」をクリックし、作成したエンドポイントのデフォルト・ウォレットを設定します。
ステップ3: Oracle Key Vaultコマンドを使用したOracle Key VaultサーバーへのTDEウォレットのダウンロード
oracle
ユーザーとしてログインし、次のステップに従います:
/tmp/work
や/tmp/work/client_wallet
などの作業ディレクトリを作成します。/tmp/work
ディレクトリに移動します。Oracle Key VaultサーバーからRESTfulサービス・ユーティリティをダウンロードして抽出します。3つのディレクトリbin
、lib
およびconf
が表示されます。mkdir /tmp/work/ mkdir /tmp/work/client_wallet cd /tmp/work curl -Ok https://okv_server_ip:5695/okvrestclipackage.zip % Total % Received % Xferd Average Speed Time Time Time Current Dload Upload Total Spent Left Speed 100 3750k 100 3750k 0 0 2500k 0 0:00:01 0:00:01 --:--:-- 2500k
okvrestclipackage.zip
ファイルの内容を抽出します。conf/okvrestcli.ini
ファイルを編集し、Oracle Key VaultサーバーのIPアドレス、ユーザー名およびクライアント自動ログイン・ウォレットが作成されるディレクトリへのパスを追加します。次の例では、クライアント自動ログイン・ウォレットが/tmp/work/client_wallet
ディレクトリに作成されます。#Provide absolute path for log_property, okv_client_config properties [Default] log_property=./conf/okvrestcli_logging.properties server=<okv_server_ip> okv_client_config=./conf/okvclient.ora user=<okv_user> client_wallet=/tmp/work/client_wallet
bin/okv
ファイルを編集し、行export OKV_RESTCLI_CONFIG=$OKV_RESTCLI_DIR/conf/okvrestcli.ini
ファイルのコメントを解除します。JAVA_HOME
を次のように設定します:#!/bin/bash export OKV_RESTCLI_DIR=$(dirname "${0}")/.. export OKV_RESTCLI_CONFIG=$OKV_RESTCLI_DIR/conf/okvrestcli.ini export JAVA_HOME=/opt/oracle/dcs/java/1.8.0_xxx if [ -z "$JAVA_HOME" ] then echo "JAVA_HOME environment variable is not set." exit 1 fi if [ -z "$OKV_RESTCLI_CONFIG" ] then echo "OKV_RESTCLI_CONFIG environment variable is not set." exit 1 fi export OKV_RESTCLI_JAR=$OKV_RESTCLI_DIR/lib/okvrestcli.jar $JAVA_HOME/bin/java -jar $OKV_RESTCLI_JAR "$@"
- クライアント自動ログイン・ウォレットを生成します。プロンプトが表示されたら、Oracle Key Vaultパスワードを指定します。
/tmp/work/bin/okv admin client-wallet add --client-wallet /tmp/work/client_wallet --wallet-user okv_user Password:
- ウォレットに対応するエンドポイントを作成します。Oracle RACデータベースの場合、各データベース・インスタンスに固有の2つのエンドポイントを作成する必要があります。このステップは、Oracle Key Vaultサーバー・ユーザー・インタフェースを使用してエンドポイントがまだ作成されていない場合にのみ実行します。
/tmp/work/bin/okv admin endpoint create --endpoint endpoint_name --type ORACLE_DB --platform LINUX64 --strict-ip-check TRUE
- ステップ1で作成したウォレットをエンドポイントのデフォルト・ウォレットとして設定します。Oracle RACデータベースの場合、両方のエンドポイントのデフォルト・ウォレットは同じTDEウォレットである必要があります。このステップは、Oracle Key Vaultサーバー・ユーザー・インタフェースを使用して、TDEウォレットがエンドポイントのデフォルト・ウォレットとしてまだ設定されていない場合にのみ実行します。
/tmp/work/bin/okv manage-access wallet set-default --wallet <wallet_name> --endpoint <endpoint_name>
okvclient.jar
ファイルをダウンロードします。Oracle RACデータベースの場合、両方のエンドポイントに対応するokvclient.jar
ファイルをダウンロードする必要があります。ファイルをダウンロードしたら、リモート・インスタンスに対応するokvclient.jar
をリモート・ノードにコピーします。/tmp/work/bin/okv admin endpoint download --endpoint <endpoint_name> --location <location>
エンドポイントをダウンロードするときに、Endpoint token is already consumed
などのメッセージが表示された場合は、次のようにエンドポイントを再度エンロールする必要があります:/tmp/work/bin/okv admin endpoint download --endpoint endpoint_name --location location /tmp/work/log/okv0.log.0 (Permission denied) { "result" : "Failure", "message" : "Endpoint token is already consumed" } /tmp/work/bin/okv admin endpoint re-enroll --endpoint <endpoint_name> /tmp/work/log/okv0.log.0 (Permission denied) { "result" : "Success" } }
ステップ4: TDEキーがOracle Key Vaultに格納されたTDE対応データベースのリストア
マルチユーザー・アクセス対応システムの場合は、データベース・ユーザーとしてログインします。マルチユーザー・アクセス対応でないシステムの場合は、root
ユーザーとしてログインします。odacli irestore-database
コマンドを使用して、TDEキーがOracle Key Vaultに格納されたTDE対応データベースをリストアします。コマンドで、オプション--enable-tde
、--okvclient-path
およびkeystore-type
を指定します。
オプション--enable-tde、-t
は、リストアされたデータベースをTDEで構成する必要があることを示します。オプション--keystore-type、-kt
を使用して、TDE構成のキーストアのタイプを指定します。オプション--okvclient-path、-ocp
を使用して、データベース・エンドポイントに対応するokvclient.jar
ファイルへの絶対パスを指定します。単一インスタンス・データベースの場合、--okvclient-path、-ocp
オプションで1つの値を指定できるのに対し、Oracle RACデータベースの場合は2つの値を指定できます。プロンプトが表示されたら、TDEパスワードを指定します。データベースのリストア操作が成功すると、Oracle Key Vaultエンドポイント・ソフトウェアが/etc/OKV/db_unique_name/okv
の場所にインストールされます。ローカルの自動ログインTDEウォレットが/etc/OKV/db_unique_name/tde
の場所に作成されます。
okvdb
をリストアするには、次のようにodacli irestore-database
コマンドを実行します:odacli irestore-database -r /tmp/bkpreport.json -n okvdb8 -y SI -t -kt OKV -ocp /tmp/okvclient.jar
Enter SYS and SYSTEM user password:
Retype SYS and SYSTEM user password:
Enter TDE wallet password:
Job details
----------------------------------------------------------------
ID: dce7bde6-7fc4-48ec-891b-649525f1ce4f
Description: Database service recovery with DB name: okvdb8
Status: Success
Created: August 28, 2024 2:50:46 PM CST
Message:
Task Name Node Name Start Time End Time Status
---------------------------------------- ------------------------- ---------------------------------------- ---------------------------------------- ----------------
Restore Database scaoda10ha13c2n1 August 28, 2024 2:51:09 PM CST August 28, 2024 2:58:11 PM CST Failure
Restore Database scaoda10ha13c2n1 August 28, 2024 2:51:10 PM CST August 28, 2024 2:58:10 PM CST Failure
Check if cluster ware is running scaoda10ha13c2n1 August 28, 2024 2:51:14 PM CST August 28, 2024 2:51:14 PM CST Success
Check if cluster ware is running scaoda10ha13c2n2 August 28, 2024 2:51:14 PM CST August 28, 2024 2:51:14 PM CST Success
Creating DbStorage for DbRestore scaoda10ha13c2n1 August 28, 2024 2:51:14 PM CST August 28, 2024 2:51:21 PM CST Success
Validating DiskSpace for DATA scaoda10ha13c2n1 August 28, 2024 2:51:14 PM CST August 28, 2024 2:51:15 PM CST Success
Setting up SSH equivalence scaoda10ha13c2n1 August 28, 2024 2:51:15 PM CST August 28, 2024 2:51:19 PM CST Success
Configuring user access to ACFS scaoda10ha13c2n1 August 28, 2024 2:51:20 PM CST August 28, 2024 2:51:20 PM CST Success
filesystems for okvdb8st
Audit directory creation scaoda10ha13c2n1 August 28, 2024 2:51:20 PM CST August 28, 2024 2:51:21 PM CST Success
Audit directory creation scaoda10ha13c2n2 August 28, 2024 2:51:21 PM CST August 28, 2024 2:51:21 PM CST Success
Configure TDE for RestoreDb TaskFlow scaoda10ha13c2n1 August 28, 2024 2:51:22 PM CST August 28, 2024 2:51:39 PM CST Success
Auxiliary Instance Creation scaoda10ha13c2n2 August 28, 2024 2:51:24 PM CST August 28, 2024 2:51:36 PM CST Success
TDE Wallet directory creation scaoda10ha13c2n1 August 28, 2024 2:51:36 PM CST August 28, 2024 2:51:36 PM CST Success
Installing OKV Client Software scaoda10ha13c2n2 August 28, 2024 2:51:36 PM CST August 28, 2024 2:51:37 PM CST Success
Auto login TDE Wallet creation scaoda10ha13c2n1 August 28, 2024 2:51:37 PM CST August 28, 2024 2:51:38 PM CST Success
Password based TDE Wallet open scaoda10ha13c2n1 August 28, 2024 2:51:38 PM CST August 28, 2024 2:51:39 PM CST Success
Install Object Store Swift module scaoda10ha13c2n2 August 28, 2024 2:51:58 PM CST August 28, 2024 2:52:16 PM CST Success
Restoring Spfile From Casper scaoda10ha13c2n2 August 28, 2024 2:52:16 PM CST August 28, 2024 2:52:38 PM CST Success
Customize Db Parameters scaoda10ha13c2n2 August 28, 2024 2:52:38 PM CST August 28, 2024 2:52:47 PM CST Success
Create spfile for restore db scaoda10ha13c2n2 August 28, 2024 2:52:47 PM CST August 28, 2024 2:52:48 PM CST Success
Restoring control file scaoda10ha13c2n2 August 28, 2024 2:52:48 PM CST August 28, 2024 2:53:11 PM CST Success
Mounting db scaoda10ha13c2n2 August 28, 2024 2:53:11 PM CST August 28, 2024 2:53:35 PM CST Success
Validating backup for RestoreDB scaoda10ha13c2n2 August 28, 2024 2:53:35 PM CST August 28, 2024 2:53:41 PM CST Success
Restoring DB for migration scaoda10ha13c2n2 August 28, 2024 2:53:41 PM CST August 28, 2024 2:54:26 PM CST Success
Change DBID and/or DBName scaoda10ha13c2n2 August 28, 2024 2:54:27 PM CST August 28, 2024 2:54:28 PM CST Success
Register Database taskflow scaoda10ha13c2n1 August 28, 2024 2:54:31 PM CST August 28, 2024 2:57:08 PM CST Success
Create SPFile in shared loc scaoda10ha13c2n2 August 28, 2024 2:54:31 PM CST August 28, 2024 2:54:37 PM CST Success
Delete Local Spfile scaoda10ha13c2n2 August 28, 2024 2:54:37 PM CST August 28, 2024 2:54:37 PM CST Success
Register DB with clusterware scaoda10ha13c2n2 August 28, 2024 2:54:37 PM CST August 28, 2024 2:55:23 PM CST Success
Set SysPassword and Create PwFile scaoda10ha13c2n1 August 28, 2024 2:55:23 PM CST August 28, 2024 2:55:25 PM CST Success
Enable block change tracking scaoda10ha13c2n2 August 28, 2024 2:55:26 PM CST August 28, 2024 2:55:28 PM CST Success
Creating pfile scaoda10ha13c2n2 August 28, 2024 2:55:28 PM CST August 28, 2024 2:55:29 PM CST Success
Updating db env scaoda10ha13c2n2 August 28, 2024 2:55:29 PM CST August 28, 2024 2:55:30 PM CST Success
Enable DbSizing Template scaoda10ha13c2n2 August 28, 2024 2:55:30 PM CST August 28, 2024 2:56:20 PM CST Success
Create tns entry scaoda10ha13c2n1 August 28, 2024 2:56:20 PM CST August 28, 2024 2:56:21 PM CST Success
Create tns entry scaoda10ha13c2n2 August 28, 2024 2:56:21 PM CST August 28, 2024 2:56:22 PM CST Success
Running datapatch scaoda10ha13c2n2 August 28, 2024 2:56:22 PM CST August 28, 2024 2:56:23 PM CST Success
Set CPU pool scaoda10ha13c2n1 August 28, 2024 2:56:23 PM CST August 28, 2024 2:56:23 PM CST Success
Reset Associated Networks for Database scaoda10ha13c2n2 August 28, 2024 2:57:10 PM CST August 28, 2024 2:57:13 PM CST Success
Reset Associated Networks scaoda10ha13c2n1 August 28, 2024 2:57:13 PM CST August 28, 2024 2:57:14 PM CST Success
Set log_archive_dest for Database scaoda10ha13c2n2 August 28, 2024 2:57:14 PM CST August 28, 2024 2:57:18 PM CST Success
Setting Database parameter for OKV scaoda10ha13c2n1 August 28, 2024 2:57:18 PM CST August 28, 2024 2:58:05 PM CST Success
Enable New Tablespace Encryption scaoda10ha13c2n2 August 28, 2024 2:58:07 PM CST August 28, 2024 2:58:08 PM CST Success
Deleting OKV Client Software Jar scaoda10ha13c2n2 August 28, 2024 2:58:09 PM CST August 28, 2024 2:58:09 PM CST Success
Copy Pwfile to Shared Storage scaoda10ha13c2n1 August 28, 2024 2:58:09 PM CST August 28, 2024 2:58:10 PM CST Success
odacli irestore-database
コマンドを実行します:リクエストでは、先にローカル・データベース・インスタンスのokvclient.jar
ファイルを指定し、その後にリモート・データベース・インスタンスのokvclient.jar
ファイルへのパスを指定します。次の例では、/tmp/dir1
の場所にあるokvclient.jar
ファイルがローカル・ノードに属し、/tmp/dir2
の場所にあるokvclient.jar
ファイルがリモート・ノードに属しています。odacli irestore-database -r /tmp/bkpreport.json -n okvdb7 -y RAC -t -kt OKV -ocp /tmp/dir1/okvclient.jar,/tmp/dir2/okvclient.jar
Enter SYS and SYSTEM user password:
Retype SYS and SYSTEM user password:
Enter TDE wallet password:
Job details
----------------------------------------------------------------
ID: 79b2d96c-0156-444b-b965-185b311f5110
Description: Database service recovery with DB name: okvdb7
Status: Success
Created: August 28, 2024 12:58:39 AM CST
Message:
Task Name Node Name Start Time End Time Status
---------------------------------------- ------------------------- ---------------------------------------- ---------------------------------------- ----------------
Check if cluster ware is running scaoda10ha13c2n1 August 28, 2024 12:59:07 AM CST August 28, 2024 12:59:07 AM CST Success
Check if cluster ware is running scaoda10ha13c2n2 August 28, 2024 12:59:07 AM CST August 28, 2024 12:59:07 AM CST Success
Creating DbStorage for DbRestore scaoda10ha13c2n1 August 28, 2024 12:59:07 AM CST August 28, 2024 12:59:14 AM CST Success
Validating DiskSpace for DATA scaoda10ha13c2n1 August 28, 2024 12:59:08 AM CST August 28, 2024 12:59:08 AM CST Success
Setting up SSH equivalence scaoda10ha13c2n1 August 28, 2024 12:59:09 AM CST August 28, 2024 12:59:12 AM CST Success
Configuring user access to ACFS scaoda10ha13c2n1 August 28, 2024 12:59:13 AM CST August 28, 2024 12:59:13 AM CST Success
filesystems for okvdb7
Audit directory creation scaoda10ha13c2n1 August 28, 2024 12:59:14 AM CST August 28, 2024 12:59:14 AM CST Success
Audit directory creation scaoda10ha13c2n2 August 28, 2024 12:59:14 AM CST August 28, 2024 12:59:14 AM CST Success
Configure TDE for RestoreDb TaskFlow scaoda10ha13c2n1 August 28, 2024 12:59:15 AM CST August 28, 2024 12:59:32 AM CST Success
Auxiliary Instance Creation scaoda10ha13c2n1 August 28, 2024 12:59:17 AM CST August 28, 2024 12:59:28 AM CST Success
TDE Wallet directory creation scaoda10ha13c2n1 August 28, 2024 12:59:28 AM CST August 28, 2024 12:59:28 AM CST Success
Installing OKV Client Software scaoda10ha13c2n1 August 28, 2024 12:59:28 AM CST August 28, 2024 12:59:29 AM CST Success
Installing OKV Client Software scaoda10ha13c2n2 August 28, 2024 12:59:30 AM CST August 28, 2024 12:59:31 AM CST Success
Auto login TDE Wallet creation scaoda10ha13c2n1 August 28, 2024 12:59:31 AM CST August 28, 2024 12:59:32 AM CST Success
Password based TDE Wallet open scaoda10ha13c2n1 August 28, 2024 12:59:32 AM CST August 28, 2024 12:59:32 AM CST Success
Install Object Store Swift module scaoda10ha13c2n2 August 28, 2024 12:59:51 AM CST August 28, 2024 1:00:09 AM CST Success
Restoring Spfile From Casper scaoda10ha13c2n1 August 28, 2024 1:00:09 AM CST August 28, 2024 1:00:28 AM CST Success
Customize Db Parameters scaoda10ha13c2n1 August 28, 2024 1:00:28 AM CST August 28, 2024 1:00:34 AM CST Success
Create spfile for restore db scaoda10ha13c2n1 August 28, 2024 1:00:34 AM CST August 28, 2024 1:00:35 AM CST Success
Restoring control file scaoda10ha13c2n1 August 28, 2024 1:00:35 AM CST August 28, 2024 1:00:58 AM CST Success
Mounting db scaoda10ha13c2n1 August 28, 2024 1:00:58 AM CST August 28, 2024 1:01:23 AM CST Success
Validating backup for RestoreDB scaoda10ha13c2n1 August 28, 2024 1:01:23 AM CST August 28, 2024 1:01:29 AM CST Success
Restoring DB for migration scaoda10ha13c2n1 August 28, 2024 1:01:29 AM CST August 28, 2024 1:10:54 AM CST Success
Re-Create control file scaoda10ha13c2n1 August 28, 2024 1:10:54 AM CST August 28, 2024 1:11:36 AM CST Success
Change DBID and/or DBName scaoda10ha13c2n1 August 28, 2024 1:11:36 AM CST August 28, 2024 1:14:34 AM CST Success
Removing Disabled Redo Threads scaoda10ha13c2n1 August 28, 2024 1:14:34 AM CST August 28, 2024 1:14:36 AM CST Success
Updating DB attributes scaoda10ha13c2n1 August 28, 2024 1:14:36 AM CST August 28, 2024 1:14:37 AM CST Success
Customize DB for Type RAC/RacOne scaoda10ha13c2n1 August 28, 2024 1:14:37 AM CST August 28, 2024 1:14:44 AM CST Success
Enable cluster ware for rac/racone db scaoda10ha13c2n1 August 28, 2024 1:14:45 AM CST August 28, 2024 1:14:45 AM CST Success
Building Cluster DB Views for Rac and scaoda10ha13c2n1 August 28, 2024 1:14:45 AM CST August 28, 2024 1:14:56 AM CST Success
RacOne
Register Database taskflow scaoda10ha13c2n1 August 28, 2024 1:14:58 AM CST August 28, 2024 1:20:24 AM CST Success
Create SPFile in shared loc scaoda10ha13c2n1 August 28, 2024 1:14:59 AM CST August 28, 2024 1:15:05 AM CST Success
Delete Local Spfile scaoda10ha13c2n1 August 28, 2024 1:15:05 AM CST August 28, 2024 1:15:05 AM CST Success
Register DB with clusterware scaoda10ha13c2n1 August 28, 2024 1:15:05 AM CST August 28, 2024 1:16:33 AM CST Success
Add Startup Trigger to Open all PDBS scaoda10ha13c2n1 August 28, 2024 1:16:33 AM CST August 28, 2024 1:16:33 AM CST Success
Set SysPassword and Create PwFile scaoda10ha13c2n1 August 28, 2024 1:16:34 AM CST August 28, 2024 1:16:38 AM CST Success
Enable block change tracking scaoda10ha13c2n1 August 28, 2024 1:16:38 AM CST August 28, 2024 1:16:54 AM CST Success
Creating pfile scaoda10ha13c2n1 August 28, 2024 1:16:55 AM CST August 28, 2024 1:16:56 AM CST Success
Updating db env scaoda10ha13c2n1 August 28, 2024 1:16:56 AM CST August 28, 2024 1:16:56 AM CST Success
Enable DbSizing Template scaoda10ha13c2n1 August 28, 2024 1:16:56 AM CST August 28, 2024 1:18:38 AM CST Success
Update Database Global Name scaoda10ha13c2n1 August 28, 2024 1:18:39 AM CST August 28, 2024 1:18:40 AM CST Success
Create tns entry scaoda10ha13c2n1 August 28, 2024 1:18:40 AM CST August 28, 2024 1:18:42 AM CST Success
Create tns entry scaoda10ha13c2n2 August 28, 2024 1:18:42 AM CST August 28, 2024 1:18:43 AM CST Success
Running datapatch scaoda10ha13c2n1 August 28, 2024 1:18:43 AM CST August 28, 2024 1:19:19 AM CST Success
Set CPU pool scaoda10ha13c2n1 August 28, 2024 1:19:19 AM CST August 28, 2024 1:19:19 AM CST Success
Reset Associated Networks for Database scaoda10ha13c2n1 August 28, 2024 1:20:26 AM CST August 28, 2024 1:20:30 AM CST Success
Reset Associated Networks scaoda10ha13c2n2 August 28, 2024 1:20:30 AM CST August 28, 2024 1:20:31 AM CST Success
Set log_archive_dest for Database scaoda10ha13c2n1 August 28, 2024 1:20:31 AM CST August 28, 2024 1:20:34 AM CST Success
Auto login TDE Wallet creation scaoda10ha13c2n1 August 28, 2024 1:20:34 AM CST August 28, 2024 1:20:36 AM CST Success
Setting Database parameter for OKV scaoda10ha13c2n1 August 28, 2024 1:20:36 AM CST August 28, 2024 1:22:17 AM CST Success
Enable New Tablespace Encryption scaoda10ha13c2n1 August 28, 2024 1:22:19 AM CST August 28, 2024 1:22:20 AM CST Success
Deleting OKV Client Software Jar scaoda10ha13c2n1 August 28, 2024 1:22:20 AM CST August 28, 2024 1:22:20 AM CST Success
Deleting OKV Client Software Jar scaoda10ha13c2n2 August 28, 2024 1:22:20 AM CST August 28, 2024 1:22:20 AM CST Success
TDE対応データベースの削除
ベア・メタル・システムおよびDBシステムのOracle Database Applianceで、Oracle Key Vaultを使用してTDEキーを格納するTDE対応データベースを削除する方法を説明します。
odacli delete-database
コマンドを使用して、TDEキーがOracle Key Vaultに格納されたTDE対応データベースを削除します。-n
オプションを使用して、削除するデータベースの名前を指定します。odacli delete-database -n kokvdb1
{
"jobId" : "6f001840-5002-43ee-9067-e22930e36d58",
"status" : "Running",
"message" : null,
"reports" : [ {
"taskId" : "TaskDcsJsonRpcExt_2259",
"taskName" : "Validate DB 9aeeeb5f-afc5-4051-8bd1-00c62048ca01 for deletion",
"nodeName" : "scaoda6m006",
"taskResult" : "",
"startTime" : "July 15, 2024 15:40:50 PM CST",
"endTime" : "July 15, 2024 15:40:50 PM CST",
"duration" : "00:00:00.13",
"status" : "Success",
"taskDescription" : null,
"parentTaskId" : "TaskSequential_2257",
"jobId" : "6f001840-5002-43ee-9067-e22930e36d58",
"tags" : [ ],
"reportLevel" : "Info",
"updatedTime" : "July 15, 2024 15:40:50 PM CST"
} ],
"createTimestamp" : "July 15, 2024 15:40:49 PM CST",
"resourceList" : [ ],
"description" : "Database service deletion with DB name: kokvdb1 with ID : 9aeeeb5f-afc5-4051-8bd1-00c62048ca01",
"updatedTime" : "July 15, 2024 15:40:50 PM CST",
"jobType" : null
}
odacli describe-job -i 6f001840-5002-43ee-9067-e22930e36d58
Job details
----------------------------------------------------------------
ID: 6f001840-5002-43ee-9067-e22930e36d58
Description: Database service deletion with DB name: kokvdb1 with ID : 9aeeeb5f-afc5-4051-8bd1-00c62048ca01
Status: Success
Created: July 15, 2024 3:40:49 PM CST
Message:
Task Name Start Time End Time Status
---------------------------------------- ---------------------------------------- ---------------------------------------- ----------------
Validate DB July 15, 2024 3:40:50 PM CST July 15, 2024 3:40:50 PM CST Success
9aeeeb5f-afc5-4051-8bd1-00c62048ca01
for deletion
Deleting the RMAN logs July 15, 2024 3:40:50 PM CST July 15, 2024 3:40:51 PM CST Success
OKV Endpoint deletion July 15, 2024 3:40:51 PM CST July 15, 2024 3:40:56 PM CST Success
OKV Wallet deletion July 15, 2024 3:40:56 PM CST July 15, 2024 3:41:05 PM CST Success
OKV Files deletion July 15, 2024 3:41:05 PM CST July 15, 2024 3:41:05 PM CST Success
Database Deletion By RHP July 15, 2024 3:41:05 PM CST July 15, 2024 3:42:37 PM CST Success
Unregister DB From Cluster July 15, 2024 3:42:37 PM CST July 15, 2024 3:42:37 PM CST Success
Kill PMON Process July 15, 2024 3:42:37 PM CST July 15, 2024 3:42:37 PM CST Success
Database Files Deletion July 15, 2024 3:42:37 PM CST July 15, 2024 3:42:49 PM CST Success
Delete File Groups of Database kokvdb1 July 15, 2024 3:42:49 PM CST July 15, 2024 3:42:58 PM CST Success
BUIの使用によるOracle Key Vaultでのユーザーの作成
マルチユーザー・アクセス対応のOracle Database Applianceで、Oracle Key Vaultサーバー構成権限を持つユーザーを作成します。
ブラウザ・ユーザー・インタフェースを使用したOracle Key Vaultユーザーの作成
odaadmin
ユーザーとしてブラウザ・ユーザー・インタフェースにログインします。https://host-ip-address:7093/mgmt/index.html
- 「Multi-User Access」タブをクリックします。
- 左側のペインの「Users」リンクをクリックします。
- 「Create User」をクリックします。
- 「Create User」ページで、「User ID」を指定し、「Role」を
ODA-OKVCONFIGADMIN
と指定し、このユーザーの「ODA Password」を指定します。BUIおよびODACLIコマンドでは、同じユーザー資格情報をログインに使用できます。 - 「Create」をクリックします。
- ジョブが発行され、ジョブへのリンクを含む確認ページが表示されます。リンクをクリックすると、ジョブの進捗、タスクおよびステータスが表示されます。ジョブ確認ページを閉じた後、「Activity」タブをクリックしてジョブの進捗を監視できます。ジョブ番号をクリックすると、タスクおよびステータスの詳細が表示されます。ページをリフレッシュするには、「Refresh」をクリックします。
- アカウントは「Inactive」状態で作成されます。ユーザー資格証明を使用してBUIにログインします。パスワードを変更するように求められます。パスワードを変更し、新しいパスワードでBUIにログインします。
データベースのOracle Key Vaultエンドポイントの更新
Oracle Key Vaultサーバーが最新リリースに更新されたときやOracle Key Vaultサーバーで証明書が再生成されたときにOracle Database Appliance上でOracle Key Vaultクライアントを更新する方法について理解しましょう。
/etc/OKV/db_unique_name/okv
の場所にある、各Oracle Key Vault TDEデータベース・インスタンスに対応付けられているOracle Key Vaultエンドポイント・ソフトウェア。- Oracle Key Vault PKCSライブラリliborapkcs.soは、
/opt/oracle/extapi/64/hsm/oracle/1.0.0/
の場所にあるすべてのOracle Key Vault TDEデータベースに共通です。 /etc/OKV/okv_server_config_name/lib/
の場所にある、各Oracle Key Vaultサーバー構成オブジェクトに対応付けられているOracle Key Vault RESTクライアントjarokvrestcli.jar
。
/etc/OKV/db_unique_name/okv
の場所にある、各Oracle Key Vault TDEデータベース・インスタンスに対応付けられているOracle Key Vaultエンドポイント・ソフトウェアのみを更新します。
odacli update-okvendpoints
コマンドによるOracle Key Vaultエンドポイント・ソフトウェアの更新
odacli update-okvendpoints
コマンドを使用して、Oracle Key Vaultエンドポイント・ソフトウェアを更新します。
--endpoint-software、-es
オプションでは、Oracle Key VaultクライアントJSONファイル内で指定されているデータベースのOracle Key Vaultエンドポイント・ソフトウェアをodacli update-okvendpoints
コマンドで更新する必要があることが指定されます。これは、
--okvclient-json、oj
オプションとともに使用されるブール・オプションです。指定した場合は、Oracle Key VaultクライアントJSON内で示されている各データベースに対応付けられたOracle Key Vaultエンドポイント・ソフトウェアが更新されます。オプションで、okvclient.jar
ファイルへの絶対パスを含むJSONファイルを指定する必要があります。デフォルト値は、false
です。Oracle Key Vaultユーザー資格証明を使用せずかわりに
okvclient.jar
を使用したデータベースのエンドポイント・ソフトウェアを更新するには、その作成中に、Oracle Key VaultクライアントJSONファイル内で、このようなデータベースの各データベース・インスタンスに対応付けられたokvclient.jar
ファイルへの絶対パスを指定する必要があります。[ { "dbName" : "racdb1", "node1" : "/tmp/racdb11/okvclient.jar", "node2" : "/tmp/racdb12/okvclient.jar" }, { "dbName" : "sidb1", "node1" : "/tmp/sidb1/okvclient.jar", } ]
Oracle Key Vaultユーザー資格証明を使用した(つまり、Oracle Key Vaultサーバー構成を使用)データベースのエンドポイント・ソフトウェアを更新するには、その作成中にOracle Key VaultクライアントJSONファイル内でその名前を指定すれば十分です。[ { "dbName" : "mydb" } ]
マルチユーザー・アクセス対応の環境またはマルチユーザー・アクセス対応のパスワードレス環境では、このリクエストを実行している
DB user
に属するOracle Key Vault TDE対応データベースのみのエンドポイント・ソフトウェアが更新されます。マルチユーザー・アクセス対応でない環境では、Oracle Key Vault TDE対応データベースすべてのエンドポイント・ソフトウェアを更新できます。これは、別々のDB user
があるのではなく、すべてのデータベースが単一ユーザーによって作成されるためです。- Oracle Key VaultとOracle Key Vault内のエンドポイントを使用してTDE対応データベースを更新するには、
--endpoint-software、-es
オプションとともに--okvclient-path-json、oj
オプションを指定します。このオプションでは、JSONファイルへの絶対パスを指定します。これには、データベース名と、そのデータベースの各インスタンスに対応付けられた
okvclient.jar
ファイルへの絶対パスが含まれます。このコマンドの実行元であるアプライアンスにこのJSONファイルが存在する必要があります。Oracle RACデータベースの場合は、両方のインスタンスに対応付けられた
okvclient.jar
ファイルへの絶対パスを指定する必要があります。単一インスタンスOracleデータベースの場合は、そのインスタンスに対応付けられたokvclient.jar
ファイルへの絶対パスを指定する必要があり、また、そのインスタンスが実行されているノード上にそれが存在する必要があります。 --library、-lib
オプションを指定して、システムに存在する各Oracle Key Vaultサーバー構成オブジェクトに対応付けられたOracle Key Vault PKCSライブラリおよびOracle Key Vault RESTクライアントjarファイルを更新します。デフォルト値はfalse
です。このオプションは、TDEキーの格納にOracle Key Vaultを使用するすべてのデータベースのエンドポイントを更新した後にのみ使用します。エンドポイントを更新するには、オプション--endpoint-software、-es
および--okvclient-path-json、-oj
を使用します。次に、オプション--library、-lib
を使用して、Oracle Key Vault PKCSライブラリおよびOKV RESTクライアントjarを更新します。Oracle Key Vault PKCSライブラリはすべてのデータベースに共通であるため、それにはまずすべてのデータベースのエンドポイントを更新する必要があります。ただし、Oracle Key Vaultサーバー上で証明書のみが更新される場合は、データベースのエンドポイントを更新するだけで十分であり、ライブラリを更新する必要はありません。このオプションは、
--endpoint-software、-es
オプションや--okvclient-path-json、-oj
オプションとともに使用しないでください。マルチユーザー・アクセス対応の環境またはマルチユーザー・アクセス対応のパスワードレス環境では、
odaadmin
ユーザーがこのオプションを指定する必要があります。Oracle Key Vault PKCSライブラリを更新すると、データベースが再起動されます。
racdb1
はOracle RACデータベースであり、sidb1
は単一インスタンス・データベースです。odacli update-okvendpoints -es -oj /tmp/okvclient.json
Enter TDE password of 'racdb1' database:
Enter TDE password of 'sidb1' database:
Job details
----------------------------------------------------------------
ID: 64ae75d4-6435-4842-b507-8adcd12bd4bd
Description: Update all databases endpoints, OKV PKCS library and all OKV REST clients
Status: Created
Created: May 29, 2025 19:24:55 PDT
Message:
Task Name Start Time End Time Status
---------------------------------------- ---------------------------------------- ---------------------------------------- ----------------
odacli describe-job -i 64ae75d4-6435-4842-b507-8adcd12bd4bd
Job details
----------------------------------------------------------------
ID: 64ae75d4-6435-4842-b507-8adcd12bd4bd
Description: Update all databases endpoints, OKV PKCS library and all OKV REST clients
Status: Success
Created: May 29, 2025 19:24:55 PDT
Message:
Task Name Node Name Start Time End Time Status
---------------------------------------- ------------------------- ---------------------------------------- ---------------------------------------- ----------------
Endpoint update : racdb1 n1 May 29, 2025 19:24:58 PDT May 29, 2025 19:24:59 PDT Success
Endpoint update : racdb1 scaoda806c1n2 May 29, 2025 19:24:59 PDT May 29, 2025 19:25:01 PDT Success
Endpoint update : sidb1 n1 May 29, 2025 19:25:05 PDT May 29, 2025 19:25:06 PDT Success
mydb
は単一インスタンス・データベースです。cat /tmp/okvclient_2.json
[
{
"dbName" : "mydb"
}
]
odacli update-okvendpoints -es -oj /tmp/okvclient_2.json
Job details
----------------------------------------------------------------
ID: 245a2d23-4a6a-4fe8-943f-9a81e1059fe7
Description: Update all databases endpoints, OKV PKCS library and all OKV REST clients
Status: Created
Created: May 29, 2025 19:26:57 PDT
Message:
Task Name Start Time End Time Status
---------------------------------------- ---------------------------------------- ---------------------------------------- ----------------
odacli describe-job -i 245a2d23-4a6a-4fe8-943f-9a81e1059fe7
Job details
----------------------------------------------------------------
ID: 245a2d23-4a6a-4fe8-943f-9a81e1059fe7
Description: Update all databases endpoints, OKV PKCS library and all OKV REST clients
Status: Success
Created: May 29, 2025 19:26:57 PDT
Message:
Task Name Node Name Start Time End Time Status
---------------------------------------- ------------------------- ---------------------------------------- ---------------------------------------- ----------------
Endpoint update : mydb n1 May 29, 2025 19:27:53 PDT May 29, 2025 19:28:47 PDT Success
odacli update-okvendpoints -lib
Databases [racdb1, sidb1, mydb] will be restarted during library update. Want to proceed? (Y/N): y
Job details
----------------------------------------------------------------
ID: f5f6a0f4-061b-4ab1-9656-51beaa381438
Description: Update all databases endpoints, OKV PKCS library and all OKV REST clients
Status: Created
Created: May 29, 2025 19:42:07 PDT
Message:
Task Name Start Time End Time Status
---------------------------------------- ---------------------------------------- ---------------------------------------- ----------------
odacli describe-job -i f5f6a0f4-061b-4ab1-9656-51beaa381438
Job details
----------------------------------------------------------------
ID: f5f6a0f4-061b-4ab1-9656-51beaa381438
Description: Update all databases endpoints, OKV PKCS library and all OKV REST clients
Status: Success
Created: May 29, 2025 19:42:07 PDT
Message:
Task Name Node Name Start Time End Time Status
-------------------------------------------------------------------------------------------------------------------------------
Okvobj1 : OKV client library update n1 May 29, 2025 19:42:20 PDT May 29, 2025 19:42:22 PDT Success
dharm: Racdb1:Database stop (Srvctl) n1 May 29, 2025 19:42:22 PDT May 29, 2025 19:42:55 PDT Success
Sidb1:Database stop (Srvctl) n1 May 29, 2025 19:42:55 PDT May 29, 2025 19:43:21 PDT Success
Mydb:Database stop (Srvctl) n1 May 29, 2025 19:43:21 PDT May 29, 2025 19:43:44 PDT Success
Database start (Srvctl) n1 May 29, 2025 19:43:44 PDT May 29, 2025 19:44:21 PDT Success
OKV PKCS library update n1 May 29, 2025 19:43:44 PDT May 29, 2025 19:43:44 PDT Success
Database start (Srvctl) n1 May 29, 2025 19:44:22 PDT May 29, 2025 19:44:53 PDT Success
Database start (Srvctl) n1 May 29, 2025 19:44:53 PDT May 29, 2025 19:45:28 PDT Success
Oracle Key Vaultを使用して構成されたTDE対応データベースの登録
Oracle Key Vaultキーストアを使用するがOracle Database Applianceツールを使用して作成されていないTDE対応データベースを登録できるようになりました。これらのデータベースをOracle Database Applianceに登録した後は、Oracle Database Applianceコマンドを使用してこれらのデータベースを管理できます。
ノート:
Oracle Database Applianceリリース19.27では、高可用性デプロイメント内で登録されている場合の、単一インスタンス・データベースの高可用性の有効化はサポートされていません。警告:
パスワードは、Oracle Key Vaultにあるウォレットに格納されます。そのウォレットが失われると、データベース表にアクセスできなくなります。そのため、Oracle Key Vaultにあるウォレットを削除しないでください。- TDEの構成には
wallet_root
データベース初期化パラメータを使用する必要があり、それを/etc/OKV/db_unique_name
値に設定する必要があります。 - TDEの構成には
TDE_CONFIGURATION
初期化パラメータを使用する必要があり、それをKEYSTORE_CONFIGURATION=OKV|FILE
値に設定する必要があります。 - エンドポイント・ソフトウェアを
/etc/OKV/db_unique_name/okv
の場所にインストールする必要があります。- Oracle RACデータベースとOracle RAC One Nodeデータベースの場合は、2つのインスタンスに対応するエンドポイント・ソフトウェアを両方のノードにインストールする必要があります。
- 単一インスタンス・データベースの場合は、エンドポイント・ソフトウェアを、そのデータベースが実行されているノードにインストールする必要があります。
- 自動ログインTDEウォレット
cwallet.sso
を、/etc/OKV/db_unique_name/tde
の場所に作成する必要があります。Oracle RACデータベースとOracle RAC One Nodeデータベースの場合は、両方のノードで自動ログインTDEウォレットを作成する必要があります。 - Oracle Key Vaultサーバー上のエンドポイントの名前は、次の形式である必要があります:
- 単一インスタンス・データベース: db_name_db_running_node_num_on_cluster_name。例:
myokvdb3_0_on_scaodaxxx-c
- Oracle RACデータベース: インスタンス1に対応するエンドポイント名: db_name1_on_cluster_name。例:
myokvdb31_on_scaodaxxx-c
- Oracle RACデータベース: インスタンス2に対応するエンドポイント名: db_name2_on_cluster_name。例:
myokvdb32_on_scaodaxxx-c
- Oracle RAC One Nodeデータベース: アクティブ・インスタンスに対応するエンドポイント名: db_name_1_on_cluster_name。例:
myokvdb3_1_on_scaodaxxx-c
- Oracle RAC One Nodeデータベース: 非アクティブなインスタンスに対応するエンドポイント名: db_name_2_on_cluster_name。例:
myokvdb3_2_on_scaodaxxx-c
- 単一インスタンス・データベース: db_name_db_running_node_num_on_cluster_name。例:
- Oracle Key Vaultサーバー上のウォレットの名前は、db_unique_name_on_cluster_nameという形式である必要があります。例:
myokvdb3_on_scaodaxx-c
Oracle Key Vaultサーバー構成を使用しないOracle Key Vault TDE対応データベースの登録
KeystoreType
属性がOKV
に設定されます。データベースのOKVServerConfigName
属性はNONE
に設定されます。
odacli register-database -sn example.com --dbclass OLTP --dbshape odb2
Enter SYS, SYSTEM and PDB Admin user password:
Retype SYS, SYSTEM and PDB Admin user password:
{
"jobId" : "f82172e2-c4c1-4a77-ba41-c3d241127325",
"status" : "Created",
"message" : "",
"reports" : [ ],
"createTimestamp" : "May 07, 2025 08:54:50 PDT",
"resourceList" : [ ],
"description" : "Database service registration with DB service name: aokv1.us.oracle.com",
"updatedTime" : "May 07, 2025 08:54:50 PDT",
"jobType" : null,
"cpsMetadata" : null
}
odacli describe-job -i f82172e2-c4c1-4a77-ba41-c3d241127325
Job details
----------------------------------------------------------------
ID: f82172e2-c4c1-4a77-ba41-c3d241127325
Description: Database service registration with DB service name: aokv1.us.oracle.com
Status: Success
Created: May 07, 2025 08:54:50 PDT
Message:
Task Name Node Name Start Time End Time Status
---------------------------------------- ------------------------- ---------------------------------------- ---------------------------------------- ----------------
Setting Database parameter for OKV n1 May 07, 2025 08:54:53 PDT May 07, 2025 08:56:29 PDT Success
Validate Hugepages For Register DB n1 May 07, 2025 08:56:29 PDT May 07, 2025 08:56:29 PDT Success
Enable OMF parameters n1 May 07, 2025 08:56:33 PDT May 07, 2025 08:56:33 PDT Success
Setting DB character set n1 May 07, 2025 08:56:33 PDT May 07, 2025 08:56:34 PDT Success
Move Spfile to right location n1 May 07, 2025 08:56:34 PDT May 07, 2025 08:56:42 PDT Success
Enable DbSizing Template n1 May 07, 2025 08:58:23 PDT May 07, 2025 09:00:41 PDT Success
Add Startup Trigger to Open all PDBS n1 May 07, 2025 09:00:42 PDT May 07, 2025 09:00:43 PDT Success
Running DataPatch n1 May 07, 2025 09:00:43 PDT May 07, 2025 09:01:37 PDT Success
Reset Associated Networks for Database n1 May 07, 2025 09:01:38 PDT May 07, 2025 09:01:41 PDT Success
Reset Associated Networks n2 May 07, 2025 09:01:41 PDT May 07, 2025 09:01:41 PDT Success
Oracle Key Vaultサーバーの構成を使用したOracle Key Vault TDE対応データベースの登録
データベースの登録後、データベースのKeystoreType
属性がOKV
に設定されます。データベースのOKVServerConfigName
属性はokv_server_config_name
に設定されます。マルチユーザー・アクセス対応の環境またはマルチユーザー・アクセス対応のパスワードレス環境では、データベースを登録しているDBユーザーがOracle Key Vaultサーバー構成リソースにアクセスできる必要があります。Oracle Database Applianceツールにより、データベースの現在のTDEパスワードが、新しいランダム・パスワードに変更されます。この新しいランダム・パスワードは、Oracle Key Vaultサーバーにあるウォレットに格納されます。ランダム・パスワードを格納するウォレットの名前は、db_name_pass_on_cluster_name
という形式になります。そのデータベースが存在する場合は、Oracle Key Vaultサーバー上でこのウォレットが削除されていないことを確認してください。
次に、Oracle Key Vaultサーバー構成を使用するregister-databaseジョブの例を示します。
odacli register-database -sn example.com --dbclass OLTP --dbshape odb2 -osc okvobj1
Enter SYS, SYSTEM and PDB Admin user password:
Retype SYS, SYSTEM and PDB Admin user password:
Enter TDE wallet password:
Retype TDE wallet password:
{
"jobId" : "37cb49bb-6129-4c49-a44e-6ee4b5c97e98",
"status" : "Created",
"message" : "",
"reports" : [ ],
"createTimestamp" : "May 07, 2025 02:16:42 PDT",
"resourceList" : [ ],
"description" : "Database service registration with DB service name: sokv10.us.oracle.com",
"updatedTime" : "May 07, 2025 02:16:42 PDT",
"jobType" : null,
"cpsMetadata" : null
}
odacli describe-job -i 37cb49bb-6129-4c49-a44e-6ee4b5c97e98
Job details
----------------------------------------------------------------
ID: 37cb49bb-6129-4c49-a44e-6ee4b5c97e98
Description: Database service registration with DB service name: sokv10.us.oracle.com
Status: Success
Created: May 07, 2025 02:16:42 PDT
Message:
Task Name Node Name Start Time End Time Status
---------------------------------------- ------------------------- ---------------------------------------- ---------------------------------------- ----------------
Setting Database parameter for OKV n1 May 07, 2025 02:16:51 PDT May 07, 2025 02:17:59 PDT Success
External Store Autologin wallet creation n1 May 07, 2025 02:17:59 PDT May 07, 2025 02:18:09 PDT Success
Shutdown database n1 May 07, 2025 02:18:09 PDT May 07, 2025 02:19:19 PDT Success
Mount database using SQL n2 May 07, 2025 02:19:19 PDT May 07, 2025 02:19:46 PDT Success
External Store Autologin wallet creation n1 May 07, 2025 02:19:46 PDT May 07, 2025 02:19:57 PDT Success
Shutdown database n2 May 07, 2025 02:19:57 PDT May 07, 2025 02:20:18 PDT Success
Startup database using SQL n1 May 07, 2025 02:20:19 PDT May 07, 2025 02:20:49 PDT Success
Re-enroll and Provision of Endpoint n1 May 07, 2025 02:20:50 PDT May 07, 2025 02:21:31 PDT Success
Save the new TDE password using a n1 May 07, 2025 02:21:31 PDT May 07, 2025 02:21:39 PDT Success
temporary custom attribute on OKV
TDE Wallet closure n1 May 07, 2025 02:21:39 PDT May 07, 2025 02:21:40 PDT Success
Change the TDE password in local wallet n1 May 07, 2025 02:21:41 PDT May 07, 2025 02:21:57 PDT Success
Auto login TDE Wallet creation n1 May 07, 2025 02:21:57 PDT May 07, 2025 02:22:01 PDT Success
Shutdown database n1 May 07, 2025 02:22:01 PDT May 07, 2025 02:22:35 PDT Success
Mount database using SQL n2 May 07, 2025 02:22:35 PDT May 07, 2025 02:23:01 PDT Success
Re-enroll and Provision of Endpoint n2 May 07, 2025 02:23:01 PDT May 07, 2025 02:23:43 PDT Success
Change the TDE password in local wallet n2 May 07, 2025 02:23:43 PDT May 07, 2025 02:23:55 PDT Success
Auto login TDE Wallet creation n1 May 07, 2025 02:23:56 PDT May 07, 2025 02:24:00 PDT Success
Shutdown database n2 May 07, 2025 02:24:00 PDT May 07, 2025 02:24:22 PDT Success
Startup database using SQL n1 May 07, 2025 02:24:22 PDT May 07, 2025 02:24:53 PDT Success
Save new TDE password on OKV n2 May 07, 2025 02:24:53 PDT May 07, 2025 02:24:59 PDT Success
Delete the temporary custom attribute n2 May 07, 2025 02:24:59 PDT May 07, 2025 02:25:03 PDT Success
on OKV
Database stop (Srvctl) n1 May 07, 2025 02:25:04 PDT May 07, 2025 02:26:04 PDT Success
Deleting OKV Client Software Jar n2 May 07, 2025 02:25:04 PDT May 07, 2025 02:25:04 PDT Success
Database start (Srvctl) n1 May 07, 2025 02:26:04 PDT May 07, 2025 02:26:36 PDT Success
Checking the TDE wallet status n1 May 07, 2025 02:26:36 PDT May 07, 2025 02:26:40 PDT Success
Validate Hugepages For Register DB n1 May 07, 2025 02:26:41 PDT May 07, 2025 02:26:42 PDT Success
Enable OMF parameters n1 May 07, 2025 02:26:45 PDT May 07, 2025 02:26:46 PDT Success
Move Spfile to right location n1 May 07, 2025 02:26:46 PDT May 07, 2025 02:26:54 PDT Success
Setting DB character set n1 May 07, 2025 02:26:46 PDT May 07, 2025 02:26:46 PDT Success
Restart RACOne database n1 May 07, 2025 02:26:54 PDT May 07, 2025 02:28:29 PDT Success
Enable DbSizing Template n1 May 07, 2025 02:28:29 PDT May 07, 2025 02:30:04 PDT Success
Running DataPatch n1 May 07, 2025 02:30:05 PDT May 07, 2025 02:30:41 PDT Success
Reset Associated Networks for Database n1 May 07, 2025 02:30:42 PDT May 07, 2025 02:30:45 PDT Success
Reset Associated Networks n2 May 07, 2025 02:30:45 PDT May 07, 2025 02:30:45 PDT Success
RMANを使用したOracle Key Vault TDEデータベースのリストアおよびデータベースの登録
TDEキーの格納にOracle Key Vaultを使用するTDE対応データベースの登録方法を理解しましょう。
- NFSの場所へのデータベースのRegular-L0または長期バックアップを使用可能である必要があります。
- ソース・データベースのSYSパスワードとTDEパスワードを把握している必要があります。
- データベースの各エンドポイントに対応する
okvclient.jar
を把握している必要があります。 - Oracle Key Vaultサーバー上のエンドポイントの名前は、次の形式である必要があります:
- 単一インスタンス・データベース: db_name_db_running_node_num_on_cluster_name。例:
myokvdb3_0_on_scaodaxxx-c
- Oracle RACデータベース: インスタンス1に対応するエンドポイント名: db_name1_on_cluster_name。例:
myokvdb31_on_scaodaxxx-c
- Oracle RACデータベース: インスタンス2に対応するエンドポイント名: db_name2_on_cluster_name。例:
myokvdb32_on_scaodaxxx-c
- Oracle RAC One Nodeデータベース: アクティブ・インスタンスに対応するエンドポイント名: db_name_1_on_cluster_name。例:
myokvdb3_1_on_scaodaxxx-c
- Oracle RAC One Nodeデータベース: 非アクティブなインスタンスに対応するエンドポイント名: db_name_2_on_cluster_name。例:
myokvdb3_2_on_scaodaxxx-c
- 単一インスタンス・データベース: db_name_db_running_node_num_on_cluster_name。例:
- Oracle Key Vaultサーバー上のウォレットの名前は、db_unique_name_on_cluster_nameという形式である必要があります。例:
myokvdb3_on_scaodaxx-c
警告:
パスワードは、Oracle Key Vaultにあるウォレットに格納されます。そのウォレットが失われると、データベース表にアクセスできなくなります。そのため、Oracle Key Vaultにあるウォレットを削除しないでください。- 必要なディレクトリを
root
ユーザーとして作成します。Oracle RACデータベースとOracle RAC One Nodeデータベースの場合は、両方のノードで次のディレクトリを作成します。mkdir /etc/OKV/db_unique_name mkdir /etc/OKV/db_unique_name/tde mkdir /etc/OKV/db_unique_name/okv chmod -R 700 /etc/OKV/db_unique_name/ chown -R db_user:group /etc/OKV/db_unique_name/
マルチユーザー・アクセス対応の環境またはマルチユーザー・アクセス対応のパスワードレス環境では、
db_user
はデータベースのプライマリ所有者であり、グループはdcsagent
です。マルチ・ユーザー・アクセス対応でないシステムの場合、db_user
はoracle
ユーザーであり、グループはoinstall
です。 - データベース・インスタンスに対応付けられたエンドポイントを、Oracle Key Vaultサーバーに再登録する必要があります。Oracle RACデータベースとOracle RAC One Nodeデータベースの場合は、両方のインスタンスに対応付けられたエンドポイントを再登録する必要があります。再登録後、そのインスタンスが実行されているノード上の、そのインスタンスに対応付けられた
okvclient.jar
をダウンロードします。 - ソース・データベースのTDEパスワードを使用して、
okvclient.jar
を/etc/OKV/db_unique_name/okv
の場所にインストールします。switch to db_user $ORACLE_HOME/jdk/jre/bin/java -jar okvclient.jar
- データベース・インスタンスを作成し、それをnomountステージで起動します。
単一インスタンス・データベースの場合:
Switch to db_user . oraenv ORACLE_SID = [dbusr1] ? myokvdb3 ORACLE_HOME = [/home/oracle] ? /u01/app/odaorahome/oracle/product/19.0.0.0/dbhome_1 cat $ORACLE_HOME/dbs/initmyokvdb3.ora db_name=myokvdb3 db_unique_name=myokvdb3 wallet_root=/etc/OKV/myokvdb3 TDE_CONFIGURATION="KEYSTORE_CONFIGURATION=OKV|FILE" orapwd file=$ORACLE_HOME/dbs/orapwmyokvdb3 password=<tde_password_used_during_db_create> entries=5 sqlplus / as sysdba SQL> startup nomount
Oracle RACデータベースの場合、ノード1で次のようにします:. oraenv ORACLE_SID = [dbusr1] ? myokvdb31 ORACLE_HOME = [/home/oracle] ? /u01/app/odaorahome/oracle/product/19.0.0.0/dbhome_1 cat $ORACLE_HOME/dbs/initmyokvdb31.ora db_name=myokvdb3 db_unique_name=myokvdb3 wallet_root=/etc/OKV/myokvdb3 TDE_CONFIGURATION="KEYSTORE_CONFIGURATION=OKV|FILE" instance_number=1 instance_name=myokvdb31 sqlplus / as sysdba SQL> startup nomount
- データベースの作成時に使用したのと同じTDEパスワードを使用して、自動ログインTDEウォレットを作成します。
単一インスタンス・データベースの場合:
SQL> administer key management add secret 'tde_password'for client 'OKV_PASSWORD' to local auto_login keystore '/etc/OKV/myokvdb3/tde';
Oracle RACデータベースの場合:SQL> administer key management add secret 'tde_password'for client 'OKV_PASSWORD' to local auto_login keystore '/etc/OKV/myokvdb3/tde';
- リストアするデータベースに対応付けられたデータベース・ストレージを作成します。
odacli create-dbstorage -n db_name -r asm
- RMANのduplicateを使用してデータベースをリストアし、NFSバックアップの場所を指定します。
Switch to db_user
単一インスタンス・データベースの場合:
. oraenv ORACLE_SID = [dbusr1] ? myokvdb3 ORACLE_HOME = [/home/oracle] ? /u01/app/odaorahome/oracle/product/19.0.0.0/dbhome_1 rman auxiliary / run { allocate auxiliary channel ch1 type disk; duplicate target database to myokvdb3 spfile set db_unique_name='myokvdb3' set db_name='myokvdb3' BACKUP LOCATION 'nfs_backup_location'; }
Oracle RACデータベースの場合:. oraenv ORACLE_SID = [dbusr1] ? myokvdb31 ORACLE_HOME = [/home/oracle] ? /u01/app/odaorahome/oracle/product/19.0.0.0/dbhome_1 rman auxiliary / run { allocate auxiliary channel ch1 type disk; duplicate target database to myokvdb3 spfile set db_unique_name='myokvdb3' set db_name='myokvdb3' set cluster_database='false' set instance_number='1' set instance_name='myokvdb31' BACKUP LOCATION 'nfs_backup_location' ; }
- Oracle RACデータベースの場合は、
cluster_database
パラメータを設定し、spfileを共有の場所に移動します。単一インスタンス・データベースの場合、このステップは必要ありません。ノード1で、次のようにします:
SQL> alter system set cluster_database=TRUE scope=spfile ; SQL> create pfile='/u01/app/odaorahome/oracle/product/19.0.0.0/dbhome_1/dbs/pfile_myokvdb3.ora' from spfile; File created. SQL> create spfile='+DATA' from pfile='/u01/app/odaorahome/oracle/product/19.0.0.0/dbhome_1/dbs/pfile_myokvdb3.ora'; File created. orapwd file='+DATA' password=<tde_password_used_during_db_create> entries=5 dbuniquename='myokvdb3'
- データベース・サービスを追加します。Oracle RACデータベースの場合は、
SQL>show parameter spfile
コマンドを使用してspfile名を見つけ、それを次のように使用します:単一インスタンス・データベースの場合:
srvctl add database -db myokvdb3 -oraclehome /u01/app/odaorahome/oracle/product/19.0.0.0/dbhome_1 -dbtype Single -spfile /u01/app/odaorahome/oracle/product/19.0.0.0/dbhome_1/dbs/spfilesdokv3.ora -pwfile /u01/app/odaorahome/oracle/product/19.0.0.0/dbhome_1/dbs/orapwsdokv3 -node node_name
Oracle RACデータベースとOracle RAC One Nodeデータベースの場合:
srvctl add database -db myokvdb3 -oraclehome /u01/app/odaorahome/oracle/product/19.0.0.0/dbhome_1 -dbtype RAC -spfile +DATA/myokvdb3/PARAMETERFILE/spfile.xxxxxxx srvctl add instance -d myokvdb3 -i myokvdb31 -n node_1_name srvctl add instance -d myokvdb3 -i myokvdb32 -n node_2_name
- SQL*Plusを使用して、データベースで
shutdown abort
コマンドを実行します。 - Oracle RACデータベースの場合は、ノード2で自動ログインTDEウォレットを作成します。
Switch to db_user . oraenv ORACLE_SID = [dbusr1] ? myokvdb32 ORACLE_HOME = [/home/oracle] ? /u01/app/odaorahome/oracle/product/19.0.0.0/dbhome_1 sqlplus / as sysdba SQL> startup nomount SQL> administer key management add secret 'tde_password' for client 'OKV_PASSWORD' to local auto_login keystore '/etc/OKV/myokvdb3/tde';
srvctl start database -db myokvdb3
コマンドを使用してデータベースを起動します。データベースの起動後、Oracle RACデータベースで、そのインスタンスに対応付けられたpmonプロセスがそれぞれのノードで実行されていることを確認します。- ソース・データベースのDB名とDB一意名が大文字である場合、このステップは必要ありません。ソース・データベースのDB名とDB一意名が大文字でない場合は、RMANバックアップからそのデータベースをリストアすると、DB名とDB一意名が大文字に変更されます。そのため、そのデータベースをリストアした後に、DB名とDB一意名の大/小文字の区別を、ソース・データベースと同じ区別に戻す必要があります。
db_home/dbs/initoracle_sid.ora
内のinitfileがすでに存在する場合はそれを削除します。- spfileからpfileを作成します。
SQL> create pfile='db_home/dbs/initoracle_sid.ora' from spfile;
db_home/dbs/initoracle_sid.ora
ファイルを編集し、db_name
およびdb_unique_name
をソース・データベースと同じ大/小文字の区別で更新します。- データベースを停止します。
SQL> shutdown immediate
- 編集したpfileを使用してデータベースを起動します。
SQL> startup pfile='<db_home>/dbs/initoracle_sid.ora'
- spfileがすでに存在する場合はそれを削除し、pfileからspfileを作成します。
SQL> create spfile='db_home/dbs/spfileoracle_sid.ora' from pfile='db_home/dbs/initoracle_sid.ora';
- データベースを再起動します。
SQL> shutdown immediate SQL> startup
- DB名とDB一意名がソース・データベースと同じ大/小文字の区別で更新されているかどうかを確認します。
SQL> show parameter db_name; SQL> show parameter db_unique_name;
- Oracle Key Vaultサーバー構成を使用せずにデータベースを登録します:
odacli register-database -sn myokvdb3.us.oracle.com --dbclass OLTP --dbshape odb2 Enter SYS, SYSTEM and PDB Admin user password: Retype SYS, SYSTEM and PDB Admin user password:
Oracle Key Vaultサーバー構成を使用してデータベースを登録するには:odacli register-database -sn example.com --dbclass OLTP --dbshape odb2 -osc okv_obj_name Enter SYS, SYSTEM and PDB Admin user password: Retype SYS, SYSTEM and PDB Admin user password: Enter TDE wallet password: Retype TDE wallet password:
RMANを使用したソフトウェア・キーストアTDEデータベースのリストアおよびデータベースの登録
TDEキーの格納にソフトウェア・ウォレットを使用するTDE対応データベースの登録方法を理解しましょう。
- NFSの場所へのデータベースのRegular-L0または長期バックアップを使用可能である必要があります。
- SYSパスワードとTDEパスワードを把握している必要があります。
- パスワード保護されたTDEウォレット(
ewallet.p12
)と自動ログインTDEウォレット(cwallet.sso
)のバックアップを使用可能である必要があります。
- リストアするソース・データベースと同じストレージ・タイプでデータベース・ストレージを作成します。
odacli create-dbstorage -n db_name -r asm|acfs
$ORACLE_HOME
の場所に、データベースに対応付けられたinitファイルを作成します。cat $ORACLE_HOME/dbs/initoracle_sid.ora db_name=db_name db_unique_name=db_unique_name wallet_root=source_database_location TDE_CONFIGURATION="KEYSTORE_CONFIGURATION=FILE"
- データベースに対応付けられたパスワード・ファイルを生成します。
orapwd file=$ORACLE_HOME/dbs/orapworacle_sid password=sys_password entries=5
- パスワード保護されたTDEウォレット(ewallet.p12)を
wallet_root/tde
パスにコピーします。 - データベースに接続し、
nomount
オプションを指定してデータベースを起動します。export ORACLE_SID=oracle_sid export ORACLE_UNQNAME=db_unique_name export ORACLE_HOME=db_home_location sqlplus / as sysdba SQL> startup nomount
- 次のコマンドを使用してローカル自動ログイン・ウォレットを生成します:
SQL> ADMINISTER KEY MANAGEMENT CREATE AUTO_LOGIN KEYSTORE FROM KEYSTORE 'wallet_root/tde' IDENTIFIED BY "tde_password";
- RMAN auxiliaryに接続し、RMANのduplicateコマンドを実行します。
単一インスタンスOracleデータベースの場合:
rman auxiliary / run { allocate auxiliary channel ch1 type disk; duplicate target database to db_name spfile set db_unique_name='db_unique_name' set db_name='db_name' BACKUP LOCATION 'nfs_location_pointing_to_backup_pieces; }
Oracle RACデータベースとOracle RAC One Nodeデータベースの場合:
rman auxiliary / run { allocate auxiliary channel ch1 type disk; duplicate target database to db_name spfile set db_unique_name='db_unique_name' set db_name='db_name' set cluster_database='false' BACKUP LOCATION 'nfs_location_pointing_to_backup_pieces; }
- リストアされたデータベースをデータベース・サービスに追加します。
単一インスタンスOracleデータベースの場合:
srvctl add database -db db_unique_name -oraclehome $ORACLE_HOME -dbtype Single -spfile $ORACLE_HOME/dbs/spfileoracle_sid.ora -pwfile $ORACLE_HOME/dbs/orapworacle_sid -node node_name
Oracle RACデータベースの場合:
srvctl add database -db db_unique_name -oraclehome $ORACLE_HOME -dbtype RAC -spfile $ORACLE_HOME/dbs/spfileoracle_sid.ora -pwfile $ORACLE_HOME/dbs/orapworacle_sid srvctl add instance -d db_unique_name -i oracle_sid1 -n node_1_name srvctl add instance -d db_unique_name -i oracle_sid2 -n node_2_name
Oracle RAC One Nodeデータベースの場合:
srvctl add database -db <db_unique_name>db_unique_name -oraclehome $ORACLE_HOME -dbtype RACOne -spfile $ORACLE_HOME/dbs/spfileoracle_sid.ora -pwfile $ORACLE_HOME/dbs/orapworacle_sid srvctl add instance -d db_unique_name -i oracle_sid_1 -n node_1_name srvctl add instance -d db_unique_name -i oracle_sid_2 -n node_2_name
- 次のように、データベースを停止してからそのデータベースを起動します:
SQL> shutdown immediate srvctl start database -db db_unique_name
Oracle RACデータベースの場合は、次のコマンドを実行します:SQL> alter system set cluster_database=TRUE scope=spfile ;
- ソース・データベースのDB名とDB一意名が大文字である場合、このステップはスキップしてかまいません。ソース・データベースのDB名とDB一意名が大文字でない場合は、RMANバックアップからそのデータベースをリストアすると、DB名とDB一意名が大文字に変更されます。そのため、リストア後に、DB名とDB一意名の大/小文字の区別をソース・データベースと同じ区別に戻す必要があります。
db_home/dbs/initoracle_sid.ora
内のinitfile
がすでに存在する場合はそれを削除します。- spfileから
pfile
を作成します。SQL> create pfile='db_home/dbs/initoracle_sid.ora' from spfile;
db_home/dbs/initoracle_sid.ora
ファイルを編集し、db_name
およびdb_unique_name
をソース・データベースと同じ大/小文字の区別で更新します。- データベースを停止します。
SQL> shutdown immediate
- 編集したpfileを使用してデータベースを起動します。
SQL> startup pfile='db_home/dbs/initoracle_sid.ora'
- spfileがすでに存在する場合はそれを削除し、pfileからspfileを作成します。
SQL> create spfile='db_home/dbs/spfileoracle_sid.ora' from pfile='db_home/dbs/initoracle_sid.ora';
- データベースを再起動します。
SQL> shutdown immediate SQL> startup
- DB名とDB一意名がソース・データベースと同じ大/小文字の区別で更新されていることを確認します。
SQL> show parameter db_name; SQL> show parameter db_unique_name;
- wallet_rootパラメータが、リストアされたデータベースの
DATA_LOCATION
に設定されていない場合は、/opt/oracle/dcs/commonstore/wallets/tde/dbunique_name
ディレクトリをdb_user
として作成します。パスワード保護されたTDEウォレットewallet.p12を/opt/oracle/dcs/commonstore/wallets/tde/dbunique_name
の場所にコピーします。DBシステムの場合は、wallet_rootをDATA_LOCATION
に設定します。 - ソース・データベースと同じSYSパスワードおよびTDEパスワードを使用して、データベースのパスワードを登録します。
odacli register-database -sn service_name --dbclass db_class --dbshape db_shape -tp
BUIを使用したOracle Key Vaultサーバー構成オブジェクトの作成
BUIを使用して、ベア・メタル・システムおよびDBシステムでTDEキーがOracle Key Vaultに格納されたTDE対応データベースをOracle Database Applianceに作成する方法を説明します。
- ブラウザ・ユーザー・インタフェースにログインします。
https://host-ip-address:7093/mgmt/index.html
- 「Credential Store」をクリックした後、「Oracle Key Vault Server Config」をクリックします。
- 既存のOracle Key Vaultサーバー構成が表示されます。
- 「Create」をクリックし、Oracle Key Vaultサーバー構成を作成します。
- 「Create OKV Server Config」ページで、「OKV Server Config Name」、「OKV Server Host」、「OKV Server IP address」、「OKV User Name」および「Password」を指定します。
- 「Create」をクリックします。
- 作成リクエスト・ジョブを確認し、ジョブが正常に完了したことを確認します。
BUIを使用したOracle Key Vaultサーバー構成に対するアクセス権の付与および取消し
BUIを使用して、ベア・メタル・システムおよびDBシステムのOracle Database ApplianceでOracle Key Vaultサーバー構成へのアクセス権を付与および取り消す方法を説明します。
Oracle Key Vaultサーバー構成へのアクセス権の付与および取消し
次のステップに従います:
- ブラウザ・ユーザー・インタフェースにログインします。
https://host-ip-address:7093/mgmt/index.html
- 「Credential Store」をクリックした後、「Oracle Key Vault Server Config」をクリックします。
- 既存のすべてのOracle Key Vaultサーバー構成を表示できます。
- 既存のOracle Key Vaultサーバー構成へのアクセス権を付与するには、Oracle Key Vaultサーバー構成を選択し、「Actions」ドロップダウン・リストから「Grant Access」を選択します。
- 「Grant Resource Access」ページで、リソースへのアクセス権を付与する「User Name」を選択します。
- 「Grant」をクリックします。
- 「Yes」をクリックして、アクションを確定します。
- 既存のOracle Key Vaultサーバー構成へのアクセス権を取り消すには、Oracle Key Vaultサーバー構成を選択し、「Actions」ドロップダウン・リストから「Revoke Access」を選択します。
- 「Revoke Resource Access」ページで、リソースへのアクセス権を取り消す「User Name」を選択します。
- 「Revoke」をクリックします。
- 「Yes」をクリックして、アクションを確定します。
BUIを使用したOracle Key Vaultサーバー構成操作の管理
ベア・メタル・システムおよびDBシステムのOracle Database ApplianceでOracle Key Vaultサーバー構成操作を管理する方法を説明します。
Oracle Key Vaultサーバー構成のリストおよび削除:
次のステップに従います:
- ブラウザ・ユーザー・インタフェースにログインします。
https://host-ip-address:7093/mgmt/index.html
- 「Credential Store」をクリックした後、「Oracle Key Vault Tasks」をクリックします。
- 既存のすべてのOracle Key Vaultサーバー構成を表示できます。
- 既存のOracle Key Vaultサーバー構成を削除するには、Oracle Key Vaultサーバー構成を選択し、「Actions」ドロップダウン・リストから「Delete」を選択します。
ソフトウェア・キーストアを使用するTDE対応OracleデータベースからOracle Key Vaultキーストアを使用する別のTDE対応データベースへの表領域の移行
expdp/impdpトランスポータブル表領域機能の使用によって、ソフトウェア・キーストアを使用するTDE対応データベースから、キーストアとしてOracle Key Vaultを使用するように、表領域を移行する方法を理解しましょう。
移行のユースケースを次に示します:
- ソフトウェア・キーストアを使用するTDE対応Oracle ACFSデータベースからOracle Key Vaultキーストアを使用する別のTDE対応データベースへの表領域の移行
Oracle ACFSデータベースのソフトウェア・キーストアからOracle Database Appliance上のOracle Key Vaultに表領域を移行する方法を理解しましょう。 - ソフトウェア・キーストアを使用するTDE対応Oracle ASMデータベースからOracle Key Vaultキーストアを使用する別のTDE対応データベースへの表領域の移行
ソフトウェア・キーストアを使用するTDE対応Oracle ASMデータベースからOracle Key Vaultキーストアを使用する別のTDE対応データベースに表領域を移行する方法を理解しましょう。 - ソフトウェア・キーストアを使用するTDE対応Oracle ACFSデータベースからOracle Key Vaultキーストアを使用する別のTDE対応マルチテナント・データベースへの表領域の移行
ソフトウェア・キーストアを使用するTDE対応Oracle ACFSデータベースからOracle Key Vaultキーストアを使用する別のTDE対応マルチテナント・データベースに表領域を移行する方法を理解しましょう。 - ソフトウェア・キーストアを使用するTDE対応Oracle ASMデータベースからOracle Key Vaultキーストアを使用する別のTDE対応マルチテナント・データベースへの表領域の移行
ソフトウェア・キーストアを使用するTDE対応Oracle ASMデータベースからOracle Key Vaultキーストアを使用する別のTDE対応マルチテナント・データベースに表領域を移行する方法を理解しましょう。
親トピック: TDE対応Oracleデータベースの管理
ソフトウェア・キーストアを使用するTDE対応Oracle ACFSデータベースからOracle Key Vaultキーストアを使用する別のTDE対応データベースへの表領域の移行
Oracle ACFSデータベースのソフトウェア・キーストアからOracle Database Appliance上のOracle Key Vaultに表領域を移行する方法を理解しましょう。
ステップ1: ソース・データベースからの表領域のエクスポート
- ソース・データベースに、宛先データベースに移行する表領域TBS01があるとします。その表領域に関する情報を指定します。
### ### login as Oracle user ### Connect to database using SQLPLUS as sysdba user and run the following ### # su - oracle $ sqlplus /nolog SQL> connect / as sysdba Connected. SQL> select TABLESPACE_NAME, ENCRYPTED from dba_tablespaces ; TABLESPACE_NAME ENC ------------------------------ --- SYSTEM YES SYSAUX YES UNDOTBS1 YES USERS YES TEMP_ENC YES TBS01 YES SQL> select FILE_NAME from dba_data_files where TABLESPACE_NAME='TBS01' ; FILE_NAME -------------------------------------------------------------------------------- /u02/app/oracle/oradata/dbtde/DBTDE/datafile/o1_mf_tbs01_mz3gfyj0_.dbf ### ### Make sure the set of tablespaces are self-contained. The following PL/SQL command must execute successfully ### SQL> EXECUTE DBMS_TTS.TRANSPORT_SET_CHECK('tbs01',true) ; PL/SQL procedure successfully completed. SQL> exit;
- エクスポート用に使用するデータベース・ディレクトリをソース・データベースDBTDE内に作成します。
### ### login as Oracle user and run the following ### # su - oracle $ mkdir -pv /u01/app/odaorabase0/oracle/dpdump/ttsps_dir mkdir: created directory '/u01/app/odaorabase0/oracle/dpdump' mkdir: created directory '/u01/app/odaorabase0/oracle/dpdump/ttsps_dir' ### ### Connect to database using SQLPLUS as sysdba user and run the following ### $ sqlplus /nolog SQL> connect / as sysdba Connected. SQL> CREATE DIRECTORY ttsps_dir AS '/u01/app/odaorabase0/oracle/dpdump/ttsps_dir'; Directory created. SQL> exit;
- ソース・データベースDBTDEからTBS01表領域をエクスポートします。まず、コピーする表領域をREAD ONLYモードに設定します。次に、指定した表領域に対して
expdp
を実行します。なお、expdpではENCRYPTION_PASSWORD
が使用されず、impdp
でもこのオプションは使用されないため、警告ORA-39396
が表示されます。この警告は無視できます。宛先データベースでimpdp
を実行する前に、TDEソフトウェア・ウォレットを宛先Oracle Key Vaultデータベース・サーバーにを転送し、対応するOracle Key Vaultウォレットにアップロードします。データベース・ディレクトリttsps_dir
の下に格納されているexpdp
用ログ・ファイルを確認します。### ### login as Oracle user ### Connect to database using SQLPLUS as sysdba user and run the following ### # su - oracle $ sqlplus /nolog SQL> connect / as sysdba Connected. SQL> ALTER TABLESPACE TBS01 READ ONLY; Tablespace altered. SQL> exit; ### ### Run expdb as SYSTEM user, password for SYSTEM need to be entered when prompted ### $ expdp system TRANSPORT_TABLESPACES=TBS01 TRANSPORT_FULL_CHECK=YES DIRECTORY=ttsps_dir DUMPFILE=expttps_dbtde.dmp Export: Release 19.0.0.0.0 - Production on Mon Apr 7 11:08:49 2025 Version 19.27.0.0.0 Copyright (c) 1982, 2019, Oracle and/or its affiliates. All rights reserved. Password: Connected to: Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production Starting "SYSTEM"."SYS_EXPORT_TRANSPORTABLE_01": system/******** TRANSPORT_TABLESPACES=TBS01 TRANSPORT_FULL_CHECK=YES DIRECTORY=ttsps_dir DUMPFILE=expttps_dbtde.dmp ORA-39396: Warning: exporting encrypted data using transportable option without password Processing object type TRANSPORTABLE_EXPORT/STATISTICS/TABLE_STATISTICS Processing object type TRANSPORTABLE_EXPORT/STATISTICS/MARKER Processing object type TRANSPORTABLE_EXPORT/PLUGTS_BLK Processing object type TRANSPORTABLE_EXPORT/POST_INSTANCE/PLUGTS_BLK Processing object type TRANSPORTABLE_EXPORT/TABLE Master table "SYSTEM"."SYS_EXPORT_TRANSPORTABLE_01" successfully loaded/unloaded ****************************************************************************** Dump file set for SYSTEM.SYS_EXPORT_TRANSPORTABLE_01 is: /u01/app/odaorabase0/oracle/dpdump/ttsps_dir/expttps_dbtde.dmp ****************************************************************************** Datafiles required for transportable tablespace TBS01: /u02/app/oracle/oradata/dbtde/DBTDE/datafile/o1_mf_tbs01_mz3gfyj0_.dbf Job "SYSTEM"."SYS_EXPORT_TRANSPORTABLE_01" completed with 1 error(s) at Mon Apr 7 11:09:15 2025 elapsed 0 00:00:20
- データファイル、TDEウォレット、
expdp dmp
ファイルを宛先データベース・サーバーにコピーし、ソース・データベースDBTDE内のデータファイルのステータスをREAD WRITE
に変更します。データファイル/u02/app/oracle/oradata/dbtde/DBTDE/datafile/o1_mf_tbs01_mz3gfyj0_.dbf
を、宛先データベース内の、データファイルの格納先となる場所にコピーします。次の例では、/u02/app/oracle/oradata/okvdb/OKVDB/datafile/
はターゲット・データベースOKVDBの場所です。エクスポート・ファイルを/u01/app/odaorabase0/oracle/dpdump/ttsps_dir
からターゲット・データベース・サーバーの/u01/app/odaorabase0/oracle/dpdump/ttsps_dir
ディレクトリ内にコピーします。また、ウォレットを、宛先にある一時/tmp/dbtde/tde
ディレクトリにコピーします。### ### login as Oracle user and run the following ### # su - oracle $ scp /u02/app/oracle/oradata/dbtde/DBTDE/datafile/o1_mf_tbs01_mz3gfyj0_.dbf oracle@target_server:/u02/app/oracle/oradata/okvdb/OKVDB/datafile/ ### Copy the expdp dump file to the destination server location. $ scp /u01/app/odaorabase0/oracle/dpdump/ttsps_dir/expttps_dbtde.dmp oracle@target_server:/location $ cp /u02/app/oracle/oradata/dbtde/tde/ewallet.p12 oracle@target_server:/tmp/dbtde/tde ### ### In source database, set the tablespace back to read write mode ### Connect to database using SQLPLUS as sysdba user and run the following ### $ sqlplus /nolog SQL> connect / as sysdba Connected. SQL> ALTER TABLESPACE TBS01 READ WRITE; SQL> exit;
ステップ2: Oracle Key Vault対応データベースへの表領域のインポート
- 宛先データベースとして、Oracle Key Vaultを使用するTDE対応データベースOKVDBが存在することを確認します。たとえば:
# odacli create-database -n okvdb -t -kt okv -ocp /tmp/okvdb_on_server_name/okvclient.jar -dh 265412be-2b21-4cc4-adc7-c845bf9e3e3a -r ACFS Enter SYS and SYSTEM user password: Retype SYS and SYSTEM user password: Enter TDE wallet password: Retype TDE wallet password: # odacli describe-database -n okvdb Database details ---------------------------------------------------------------- ID: b0d137c0-31fa-453b-82e4-d6a364bca4df Description: okvdb DB Name: okvdb DB Type: SI CDB: false Storage: ACFS Home ID: 265412be-2b21-4cc4-adc7-c845bf9e3e3a TDE Wallet Management: ODA TDE Enabled: true KeystoreType : OKV okvServerConfigName : NONE
- インポート操作用に、データベース・ディレクトリをOracle Key Vault対応の宛先データベースに作成します。ソース・データベースのexpdpダンプ・ファイルおよびimpdpの出力は、データベース・ディレクトリ・オブジェクトに格納されます。expdpダンプ・ファイルをソース・データベース・サーバーからこのサーバーにコピーし、impdpダンプ・ファイルを使用して表領域メタデータを宛先データベースに追加します。
### ### login as Oracle user ### Connect to database using SQLPLUS as sysdba user and run the following ### # su - oracle $ sqlplus /nolog SQL> connect / as sysdba SQL> CREATE DIRECTORY ttsps_dir AS '/u01/app/odaorabase0/oracle/dpdump/ttsps_dir'; Directory created. SQL> exit;
- ウォレット・キーを、ソース・データベースから宛先データベース内のOKVDBウォレットにアップロードします。
### ### login as Oracle user ### Upload the software keystore wallet entries to OKV server wallet. Notice the directory name /etc/OKV/<db_unique_name>/okv/bin ### $ cd /etc/OKV/okvdb/okv/bin $ ./okvutil list Enter Oracle Key Vault endpoint password: Unique ID Type Identifier 3D433A6C-F7B0-433D-91B3-0ADABBDB7509 Template Default template for OKVDB_ON_<SERVER-NAME> FC6AA1F6-C816-4771-A9B6-0D4EC3F4B015 Symmetric Key TDE Master Encryption Key: TAG okvdb $ ./okvutil upload -t WALLET -l /tmp/dbtde/tde -g okvdb_on_<server_name>-c -v 4 -o okvutil version 21.10.0.0.0 Endpoint type: Oracle Database Configuration file: /etc/OKV/okvdb/okv/conf/okvclient.ora Server: 100.70.126.204:5696 Standby Servers: Uploading from /tmp/dbtde/tde Enter source wallet password: No auto-login wallet found, password needed Enter Oracle Key Vault endpoint password: ORACLE.SECURITY.ID.ENCRYPTION. Trying to connect to 100.70.126.204:5696 ... Connected to 100.70.126.204:5696. ORACLE.SECURITY.KB.ENCRYPTION. ORACLE.SECURITY.KT.ENCRYPTION.ASivkc8tqE9mv6RX0F9nYzsAAAAAAAAAAAAAAAAAAAAAAAAAAAAA ORACLE.SECURITY.KM.ENCRYPTION.ASivkc8tqE9mv6RX0F9nYzsAAAAAAAAAAAAAAAAAAAAAAAAAAAAA ORACLE.SECURITY.DB.ENCRYPTION.ASivkc8tqE9mv6RX0F9nYzsAAAAAAAAAAAAAAAAAAAAAAAAAAAAA ORACLE.SECURITY.DB.ENCRYPTION.MASTERKEY Uploaded 1 TDE keys Uploaded 0 SEPS entries Uploaded 0 other secrets Uploaded 3 opaque objects Uploading private key Uploading certificate request Uploading trust points Uploaded 1 private keys Uploaded 1 certificate requests Uploaded 0 user certificates Uploaded 0 trust points Upload succeeded ### ### Comparing the output of 'okvutil list' shows that TDE Wallet Keys were uploaded to OKV wallet ### $ ./okvutil list Enter Oracle Key Vault endpoint password: Unique ID Type Identifier 17D6044D-F777-4E6F-9B0A-F08D653354F2 Opaque Object Certificate Request 3D433A6C-F7B0-433D-91B3-0ADABBDB7509 Template Default template for OKVDB_ON_<SERVER-NAME> 54FA58D4-B429-4A38-911F-8F2245D3B90F Opaque Object TDE Wallet Metadata 9D509C97-231E-43E9-98C8-637DECF13ECD Opaque Object TDE Wallet Metadata A7168F0B-2023-5141-B720-EC771F9B23A1 Symmetric Key TDE Master Encryption Key: TAG set_master_key E63A4B3D-3B84-4BEF-96BF-18CC844EB041 Opaque Object TDE Wallet Metadata E727B9E3-8803-499B-8DAF-20C08ED587EA Private Key - FC6AA1F6-C816-4771-A9B6-0D4EC3F4B015 Symmetric Key TDE Master Encryption Key: TAG okvdb $ rm -rf /tmp/dbtde
- TBS01表領域を宛先データベースOKVDBにインポートします。
### ### Run impdb as SYSTEM user, password for SYSTEM need to be entered when prompted ### $ impdp system TRANSPORT_DATAFILES=\'/u02/app/oracle/oradata/okvdb/OKVDB/datafile/o1_mf_tbs01_mz3gfyj0_.dbf' DIRECTORY=ttsps_dir dumpfile=expttps.dmp Import: Release 19.0.0.0.0 - Production on Mon Nov 6 12:53:37 2023 Version 19.25.0.0.0 Copyright (c) 1982, 2019, Oracle and/or its affiliates. All rights reserved. Password: Connected to: Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production Master table "SYSTEM"."SYS_IMPORT_TRANSPORTABLE_01" successfully loaded/unloaded Starting "SYSTEM"."SYS_IMPORT_TRANSPORTABLE_01": system/******** TRANSPORT_DATAFILES='/u02/app/oracle/oradata/dbtde/DBTDE/datafile/o1_mf_tbs01_lnlgn65j_.dbf' DIRECTORY=ttsps_dir dumpfile=expttps.dmp Processing object type TRANSPORTABLE_EXPORT/PLUGTS_BLK Processing object type TRANSPORTABLE_EXPORT/TABLE Processing object type TRANSPORTABLE_EXPORT/STATISTICS/TABLE_STATISTICS Processing object type TRANSPORTABLE_EXPORT/POST_INSTANCE/PLUGTS_BLK Job "SYSTEM"."SYS_IMPORT_TRANSPORTABLE_01" successfully completed at Mon Nov 6 12:53:46 2023 elapsed 0 00:00:03
- 宛先のOracle Key Vault対応データベースで表領域のステータスを変更し、暗号化をテストします。インポートした表領域をREAD WRITEに設定します。
### ### login as Oracle user ### Connect to database using SQLPLUS as sysdba user and run the following ### # su - oracle $ sqlplus /nolog SQL> connect / as sysdba SQL> select TABLESPACE_NAME, STATUS , ENCRYPTED from dba_tablespaces ; TABLESPACE_NAME STATUS ENC ------------------------------ --------- --- SYSTEM ONLINE YES SYSAUX ONLINE YES UNDOTBS1 ONLINE YES USERS ONLINE YES TEMP_ENC ONLINE YES TBS01 READ ONLY YES SQL> alter tablespace TBS01 read write ; Tablespace altered. SQL> select TABLESPACE_NAME, STATUS , ENCRYPTED from dba_tablespaces ; TABLESPACE_NAME STATUS ENC ------------------------------ --------- --- SYSTEM ONLINE YES SYSAUX ONLINE YES UNDOTBS1 ONLINE YES USERS ONLINE YES TEMP_ENC ONLINE YES TBS01 ONLINE YES ### ### Retrieve the data from TAB1. Consider that TAB1 was created using tablespace TBS01 and can now be queried. ### SQL> select OWNER, table_name from tab1 where rownum < 3; OWNER -------------------------------------------------------------------------------- TABLE_NAME -------------------------------------------------------------------------------- SYS TS$ SYS ICOL$
ソフトウェア・キーストアを使用するTDE対応Oracle ASMデータベースからOracle Key Vaultキーストアを使用する別のTDE対応データベースへの表領域の移行
ソフトウェア・キーストアを使用するTDE対応Oracle ASMデータベースからOracle Key Vaultキーストアを使用する別のTDE対応データベースに表領域を移行する方法を理解しましょう。
ステップ1: ソース・データベースからの表領域のエクスポート
- ソース・データベースに、宛先データベースに移行する表領域TBS01があるとします。その表領域に関する情報を指定します。
### ### login as Oracle user ### Connect to database using SQLPLUS as sysdba user and run the following ### # su - oracle $ sqlplus /nolog SQL> connect / as sysdba Connected. SQL> select TABLESPACE_NAME, ENCRYPTED from dba_tablespaces ; TABLESPACE_NAME ENC ------------------------------ --- SYSTEM YES SYSAUX YES UNDOTBS1 YES USERS YES TEMP_ENC YES TBS01 YES SQL> select FILE_NAME from dba_data_files where TABLESPACE_NAME='TBS01' ; FILE_NAME -------------------------------------------------------------------------------- +DATA/DBASM/DATAFILE/tbs01.268.1197828959 ### ### Make sure the set of tablespaces are self-contained. The following PL/SQL command must execute successfully ### SQL> EXECUTE DBMS_TTS.TRANSPORT_SET_CHECK('tbs01',true) ; PL/SQL procedure successfully completed. SQL> exit;
- ソース・データベースDBASMからTBS01表領域をエクスポートします。まず、コピーする表領域をREAD ONLYモードに設定します。次に、移行する必要がある表領域に対して
expdp
を実行します。データベース・ディレクトリttsps_dir
に格納されているexpdp
のダンプ・ファイルを確認します。### ### Set the tablespaces that you need to be exported in read-only mode ### login as Oracle user ### Connect to database using SQLPLUS as sysdba user and run the following # su - oracle $ sqlplus /nolog SQL> connect / as sysdba SQL> ALTER TABLESPACE TBS01 READ ONLY; Tablespace altered. SQL> exit; ### ### Run expdb as SYSTEM user, password for SYSTEM need to be entered when prompted ### $ expdp system TRANSPORT_TABLESPACES=TBS01 TRANSPORT_FULL_CHECK=YES DIRECTORY=ttsps_dir DUMPFILE=expttps_dbasm.dmp Export: Release 19.0.0.0.0 - Production on Mon Apr 7 18:19:28 2025 Version 19.27.0.0.0 Copyright (c) 1982, 2019, Oracle and/or its affiliates. All rights reserved. Password: Connected to: Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production Starting "SYSTEM"."SYS_EXPORT_TRANSPORTABLE_01": system/******** TRANSPORT_TABLESPACES=TBS01 TRANSPORT_FULL_CHECK=YES DIRECTORY=ttsps_dir DUMPFILE=expttps_dbasm.dmp ORA-39396: Warning: exporting encrypted data using transportable option without password Processing object type TRANSPORTABLE_EXPORT/STATISTICS/TABLE_STATISTICS Processing object type TRANSPORTABLE_EXPORT/PLUGTS_BLK Processing object type TRANSPORTABLE_EXPORT/POST_INSTANCE/PLUGTS_BLK Processing object type TRANSPORTABLE_EXPORT/TABLE Master table "SYSTEM"."SYS_EXPORT_TRANSPORTABLE_01" successfully loaded/unloaded ****************************************************************************** Dump file set for SYSTEM.SYS_EXPORT_TRANSPORTABLE_01 is: /u01/app/odaorabase0/oracle/dpdump/ttsps_dir/expttps_dbasm.dmp ****************************************************************************** Datafiles required for transportable tablespace TBS01: +DATA/DBASM/DATAFILE/tbs01.268.1197828959 Job "SYSTEM"."SYS_EXPORT_TRANSPORTABLE_01" completed with 1 error(s) at Mon Apr 7 18:19:52 2025 elapsed 0 00:00:18
- Oracle ASMからファイル・システムにデータファイルをコピーした後、そのデータファイルを宛先データベース・サーバーに移動します。その後、データファイルを宛先データベース・サーバーに移動し、そのファイルをOracle ASMにコピーします。次に、表領域のステータスを
READ WRITE
に変更します。### ### login to grid user ### Copy datafile from ASM to filesystem ### # su - grid $ asmcmd cp +DATA/DBASM/DATAFILE/tbs01.278.1197745689 /home/grid/tbs01.dbf copying +DATA/DBASM/DATAFILE/tbs01.278.1197745689 -> /home/grid/tbs01.dbf ### ### In source database, set the tablespace back to read write mode ### login as Oracle user ### Connect to database using SQLPLUS as sysdba user and run the following ### # su - oracle $ sqlplus /nolog SQL> connect / as sysdba SQL> ALTER TABLESPACE TBS01 READ WRITE; SQL> exit;
- ソース・データベースのソフトウェア・キーストア・ウォレットをターゲット・サーバー上のファイル・システムにコピーします。
$ mkdir -pv /tmp/DBASM/tde mkdir: created directory '/tmp/DBASM' mkdir: created directory '/tmp/DBASM/tde' SQL> administer key management create keystore '/tmp/DBASM/tde' identified by "<password>"; keystore altered. SQL> administer key management merge keystore '+DATA/DBASM/tde' identified by "<password>" into existing keystore '/tmp/DBASM/tde' identified by "<password>" with backup ; keystore altered.
-
expdp
ダンプ・ファイルを/u01/app/odaorabase0/oracle/dpdump/ttsps_dir
から宛先サーバーにコピーし、データファイルを/home/grid/tbs01.dbf
からターゲット・データベース・サーバーにコピーします。The expdp and impdp directory is the same in this case, so, no copy is necessary, for remote copy dumpfile using similar this command $ scp /u01/app/odaorabase0/oracle/dpdump/ttsps_dir/expttps_dbasm.dmp oracle@target_server:/location
ステップ2: Oracle Key Vault対応データベースへの表領域のインポート
- 宛先データベースとして、Oracle Key Vaultを使用するTDE対応データベースOKVASMが存在することを確認します。
expdp
とimpdp
を使用して、ソース・データベースのデータファイルと表領域をこのデータベースにコピーします。ブラウザ・ユーザー・インタフェース(BUI)またはODACLIコマンドを使用して、Oracle Database Applianceにデータベースを作成します。たとえば:# odacli create-database -n okvasm -t -kt okv -ocp /tmp/okvasm_on_<server_name>/okvclient.jar -dh 265412be-2b21-4cc4-adc7-c845bf9e3e3a -r ASM Enter SYS and SYSTEM user password: Retype SYS and SYSTEM user password: Enter TDE wallet password: Retype TDE wallet password: # odacli describe-database -n okvasm Database details ---------------------------------------------------------------- ID: 19ce57f8-6f10-4e15-a403-4ded6ac0084b Description: okvasm DB Name: okvasm DB Type: SI CDB: false Storage: ASM Home ID: 265412be-2b21-4cc4-adc7-c845bf9e3e3a TDE Wallet Management: ODA TDE Enabled: true KeystoreType : OKV okvServerConfigName : NONE
- ファイル・システムからOKVASMの宛先Oracle ASMの場所にデータファイルをコピーし、データファイルの権限を変更します。
### ### login to grid user ### Copy datafile from from filesystem to ASM ### # su - grid $ asmcmd cp /home/grid/tbs01.dbf +DATA/OKVASM//DATAFILE/tbs01 --dest_dbname OKVASM copying /home/grid/tbs01.dbf -> +DATA/OKVASM//DATAFILE/tbs01 ASMCMD> cd +DATA/OKVASM//DATAFILE ASMCMD> ls --permission User Group Permission Name oracle@3fe6130d68b04fc6ffab5b96ff256f8e OKVASM_CDB$ROOT rw------- SYSAUX.290.1197813993 oracle@3fe6130d68b04fc6ffab5b96ff256f8e OKVASM_CDB$ROOT rw------- SYSTEM.315.1197813987 oracle@3fe6130d68b04fc6ffab5b96ff256f8e OKVASM_CDB$ROOT rw------- UNDOTBS1.309.1197814001 oracle@3fe6130d68b04fc6ffab5b96ff256f8e OKVASM_CDB$ROOT rw------- USERS.313.1197813977 grid@3fe6130d68b04fc6ffab5b96ff256f8e rw------- tbs01 => +DATA/OKVASM/DATAFILE/tbs01.318.1197830121 grid@3fe6130d68b04fc6ffab5b96ff256f8e rw------- tbs01.318.1197830121 ASMCMD> ASMCMD> chown oracle@3fe6130d68b04fc6ffab5b96ff256f8e:OKVASM_CDB$ROOT tbs01 ASMCMD> ls --permission User Group Permission Name oracle@3fe6130d68b04fc6ffab5b96ff256f8e OKVASM_CDB$ROOT rw------- SYSAUX.290.1197813993 oracle@3fe6130d68b04fc6ffab5b96ff256f8e OKVASM_CDB$ROOT rw------- SYSTEM.315.1197813987 oracle@3fe6130d68b04fc6ffab5b96ff256f8e OKVASM_CDB$ROOT rw------- UNDOTBS1.309.1197814001 oracle@3fe6130d68b04fc6ffab5b96ff256f8e OKVASM_CDB$ROOT rw------- USERS.313.1197813977 oracle@3fe6130d68b04fc6ffab5b96ff256f8e OKVASM_CDB$ROOT rw------- tbs01 => +DATA/OKVASM/DATAFILE/tbs01.318.1197830121 oracle@3fe6130d68b04fc6ffab5b96ff256f8e OKVASM_CDB$ROOT rw------- tbs01.318.1197830121 ASMCMD>
- インポート用にデータベース・ディレクトリをOKVASMデータベースに作成します。
### ### login as Oracle user ### Connect to database using SQLPLUS as sysdba user and run the following ### # su - oracle $ sqlplus /nolog SQL> connect / as sysdba SQL> CREATE DIRECTORY ttsps_dir AS '/u01/app/odaorabase0/oracle/dpdump/ttsps_dir'; Directory created. SQL> exit;
- ウォレット・キーを、ソース・ウォレットから宛先にあるOKVASM OKVウォレットにアップロードします。
### ### login as Oracle user ### Upload the software keystore wallet entries to OKV server wallet ### $ cd /etc/OKV/okvasm/okv/bin $ ./okvutil list Enter Oracle Key Vault endpoint password: Unique ID Type Identifier 4E58C724-E704-4245-A131-D357E1A7762A Template Default template for OKVASM_ON_<SERVER-NAME> C839BE56-9688-48C6-8C16-F2E34A304847 Symmetric Key TDE Master Encryption Key: TAG okvasm $ ./okvutil upload -t WALLET -l /tmp/DBASM/tde -g okvasm_on_<server_name>-c -v 4 -o okvutil version 21.10.0.0.0 Endpoint type: Oracle Database Configuration file: /etc/OKV/okvasm/okv/conf/okvclient.ora Server: 100.70.126.204:5696 Standby Servers: Uploading from /tmp/DBASM/tde Enter source wallet password: No auto-login wallet found, password needed Enter Oracle Key Vault endpoint password: ORACLE.SECURITY.KB.ENCRYPTION. Trying to connect to 100.70.126.204:5696 ... Connected to 100.70.126.204:5696. ORACLE.SECURITY.ID.ENCRYPTION. ORACLE.SECURITY.KT.ENCRYPTION.Aeb4ZXoXJU9/v0wdUBJyfMMAAAAAAAAAAAAAAAAAAAAAAAAAAAAA ORACLE.SECURITY.KM.ENCRYPTION.Aeb4ZXoXJU9/v0wdUBJyfMMAAAAAAAAAAAAAAAAAAAAAAAAAAAAA ORACLE.SECURITY.DB.ENCRYPTION.Aeb4ZXoXJU9/v0wdUBJyfMMAAAAAAAAAAAAAAAAAAAAAAAAAAAAA ORACLE.SECURITY.DB.ENCRYPTION.MASTERKEY Uploaded 1 TDE keys Uploaded 0 SEPS entries Uploaded 0 other secrets Uploaded 3 opaque objects Uploading private key Uploading certificate request Uploading trust points Uploaded 1 private keys Uploaded 1 certificate requests Uploaded 0 user certificates Uploaded 0 trust points Upload succeeded ### ### Comparing the output of 'okvutil list' shows that TDE Wallet Keys were uploaded to OKV wallet ### $ ./okvutil list Enter Oracle Key Vault endpoint password: Unique ID Type Identifier 2FF42EBA-AB07-456C-BBC1-5AFEC1CCB544 Opaque Object TDE Wallet Metadata 4E58C724-E704-4245-A131-D357E1A7762A Template Default template for OKVASM_ON_<SERVER-NAME> 6403E441-2624-4360-BB55-E0C35709CDA6 Opaque Object Certificate Request 949A121D-B76A-448C-91EF-856BFD54DC1F Private Key - A726D77A-09C1-5CD5-9650-3FDCB6BD0738 Symmetric Key TDE Master Encryption Key: TAG set_master_key C81832F9-E5E9-4050-8A52-160705EC71BF Opaque Object TDE Wallet Metadata C839BE56-9688-48C6-8C16-F2E34A304847 Symmetric Key TDE Master Encryption Key: TAG okvasm E860114F-A374-4534-8717-98DB92499E1A Opaque Object TDE Wallet Metadata $ rm -rf /tmp/DBASM/tde
- TBS01表領域を宛先データベースOKVASMにインポートします。TRANSPORT_DATAFILESは、宛先データベース内のデータ・ファイルの場所を参照します。
### ### login as Oracle user ### Run impdb as SYSTEM user, password for SYSTEM need to be entered when prompted ### # su - oracle $ impdp system TRANSPORT_DATAFILES=\'+DATA/OKVASM/DATAFILE/tbs01\' DIRECTORY=ttsps_dir dumpfile=expttps_dbasm.dmp Import: Release 19.0.0.0.0 - Production on Mon Apr 7 18:43:53 2025 Version 19.27.0.0.0 Copyright (c) 1982, 2019, Oracle and/or its affiliates. All rights reserved. Password: Connected to: Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production Master table "SYSTEM"."SYS_IMPORT_TRANSPORTABLE_01" successfully loaded/unloaded Starting "SYSTEM"."SYS_IMPORT_TRANSPORTABLE_01": system/******** TRANSPORT_DATAFILES='+DATA/OKVASM/DATAFILE/tbs01' DIRECTORY=ttsps_dir dumpfile=expttps_dbasm.dmp Processing object type TRANSPORTABLE_EXPORT/PLUGTS_BLK Processing object type TRANSPORTABLE_EXPORT/TABLE Processing object type TRANSPORTABLE_EXPORT/STATISTICS/TABLE_STATISTICS Processing object type TRANSPORTABLE_EXPORT/POST_INSTANCE/PLUGTS_BLK Job "SYSTEM"."SYS_IMPORT_TRANSPORTABLE_01" successfully completed at Mon Apr 7 18:44:05 2025 elapsed 0 00:00:04
- 宛先OKVASMデータベースで表領域のステータスを変更し、暗号化をテストします。
### ### login as Oracle user ### Connect to database using SQLPLUS as sysdba user and run the following ### # su - oracle $ sqlplus /nolog SQL> connect / as sysdba SQL> select TABLESPACE_NAME, STATUS , ENCRYPTED from dba_tablespaces ; TABLESPACE_NAME STATUS ENC ------------------------------ --------- --- SYSTEM ONLINE YES SYSAUX ONLINE YES UNDOTBS1 ONLINE YES USERS ONLINE YES TEMP_ENC ONLINE YES TBS01 READ ONLY YES 6 rows selected. SQL> alter tablespace TBS01 read write ; Tablespace altered. SQL> select TABLESPACE_NAME, STATUS , ENCRYPTED from dba_tablespaces ; TABLESPACE_NAME STATUS ENC ------------------------------ --------- --- SYSTEM ONLINE YES SYSAUX ONLINE YES UNDOTBS1 ONLINE YES USERS ONLINE YES TEMP_ENC ONLINE YES TBS01 ONLINE YES ### ### Retrieve the data from TAB1 ### SQL> select OWNER, table_name from tab1 where rownum < 3; OWNER -------------------------------------------------------------------------------- TABLE_NAME -------------------------------------------------------------------------------- SYS TS$ SYS ICOL$
ソフトウェア・キーストアを使用するTDE対応Oracle ACFSデータベースからOracle Key Vaultキーストアを使用する別のTDE対応マルチテナント・データベースへの表領域の移行
ソフトウェア・キーストアを使用するTDE対応Oracle ACFSデータベースからOracle Key Vaultキーストアを使用する別のTDE対応マルチテナント・データベースに表領域を移行する方法を理解しましょう。
ステップ1: ソース・データベースからの表領域のエクスポート
- ソース・データベースに、宛先データベースに移行する表領域TBS01があるとします。その表領域に関する情報を指定します。
### ### login as Oracle user ### Connect to database using SQLPLUS as sysdba user and run the following ### # su - oracle $ sqlplus /nolog SQL> connect / as sysdba Connected. SQL> select TABLESPACE_NAME, ENCRYPTED from dba_tablespaces ; TABLESPACE_NAME ENC ------------------------------ --- SYSTEM YES SYSAUX YES UNDOTBS1 YES USERS YES TEMP_ENC YES TBS01 YES SQL> select FILE_NAME from dba_data_files where TABLESPACE_NAME='TBS01' ; FILE_NAME -------------------------------------------------------------------------------- /u02/app/oracle/oradata/dbtdec/DBTDEC/321537BF1BE47143E063E730850AA965/datafile/o1_mf_tbs01_mz69cvrf_.dbf ### ### Make sure the set of tablespaces are self-contained. The following PL/SQL command must execute successfully ### SQL> EXECUTE DBMS_TTS.TRANSPORT_SET_CHECK('tbs01',true) ; PL/SQL procedure successfully completed. SQL> exit;
- エクスポート用に使用するデータベース・ディレクトリをソース・データベースDBTDEC内に作成します。
expdp
で使用するデータベース・ディレクトリ・オブジェクトを宛先データベースに作成します。### ### login as Oracle user and run the following ### # su - oracle $ mkdir -pv /u01/app/odaorabase0/oracle/dpdump/ttsps_dir mkdir: created directory '/u01/app/odaorabase0/oracle/dpdump' mkdir: created directory '/u01/app/odaorabase0/oracle/dpdump/ttsps_dir' ### ### Connect to database using SQLPLUS as sysdba user and run the following ### $ sqlplus /nolog SQL> connect / as sysdba Connected. SQL> CREATE DIRECTORY ttsps_dir AS '/u01/app/odaorabase0/oracle/dpdump/ttsps_dir'; Directory created. SQL> exit;
- ソース・データベースDBTDECからTBS01表領域をエクスポートします。まず、コピーする表領域をREAD ONLYモードに設定します。次に、指定した表領域に対して
expdp
を実行します。なお、expdpではENCRYPTION_PASSWORD
が使用されず、impdp
でもこのオプションは使用されないため、警告ORA-39396
が表示されます。宛先データベースでimpdp
を実行する前に、TDEソフトウェア・ウォレットを宛先Oracle Key Vaultデータベース・サーバーにを転送し、対応するOracle Key Vaultウォレットにアップロードします。データベース・ディレクトリttsps_dir
の下に格納されているexpdp
用ログ・ファイルを確認します。### ### login as Oracle user ### Connect to database using SQLPLUS as sysdba user and run the following ### # su - oracle $ sqlplus /nolog SQL> connect / as sysdba Connected. SQL> ALTER TABLESPACE TBS01 READ ONLY; Tablespace altered. SQL> exit; ### ### Run expdb as SYSTEM user, password for SYSTEM need to be entered when prompted ### $ expdp system TRANSPORT_TABLESPACES=TBS01 TRANSPORT_FULL_CHECK=YES DIRECTORY=ttsps_dir DUMPFILE=expttps_dbtde.dmp Export: Release 19.0.0.0.0 - Production on Mon Apr 7 11:08:49 2025 Version 19.27.0.0.0 Copyright (c) 1982, 2019, Oracle and/or its affiliates. All rights reserved. Password: Connected to: Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production Starting "SYSTEM"."SYS_EXPORT_TRANSPORTABLE_01": system/******** TRANSPORT_TABLESPACES=TBS01 TRANSPORT_FULL_CHECK=YES DIRECTORY=ttsps_dir DUMPFILE=expttps_dbtde.dmp ORA-39396: Warning: exporting encrypted data using transportable option without password Processing object type TRANSPORTABLE_EXPORT/STATISTICS/TABLE_STATISTICS Processing object type TRANSPORTABLE_EXPORT/STATISTICS/MARKER Processing object type TRANSPORTABLE_EXPORT/PLUGTS_BLK Processing object type TRANSPORTABLE_EXPORT/POST_INSTANCE/PLUGTS_BLK Processing object type TRANSPORTABLE_EXPORT/TABLE Master table "SYSTEM"."SYS_EXPORT_TRANSPORTABLE_01" successfully loaded/unloaded ****************************************************************************** Dump file set for SYSTEM.SYS_EXPORT_TRANSPORTABLE_01 is: /u01/app/odaorabase0/oracle/dpdump/ttsps_dir/expttps_dbtde.dmp ****************************************************************************** Datafiles required for transportable tablespace TBS01: /u02/app/oracle/oradata/dbtdec/DBTDEC/321537BF1BE47143E063E730850AA965/datafile/o1_mf_tbs01_mz69cvrf_.dbf Job "SYSTEM"."SYS_EXPORT_TRANSPORTABLE_01" completed with 1 error(s) at Mon Apr 7 11:09:15 2025 elapsed 0 00:00:20
- データファイル、TDEウォレットおよび
expdp dmp
ファイルを宛先データベース・サーバーにコピーし、ソース・データベースDBTDE内のデータファイルのステータスをREAD WRITE
に編集します。データファイル/u02/app/oracle/oradata/dbtdec/DBTDEC/321537BF1BE47143E063E730850AA965/datafile/o1_mf_tbs01_mz69cvrf_.dbf
をOracle Key Vaultデータベース・サーバーのPDBの場所/u02/app/oracle/oradata/okvdbc/OKVDBC/323B892160327BC5E063E730850A8FEA/datafile/
にコピーします。### ### login as Oracle user and run the following ### # su - oracle $ scp /u02/app/oracle/oradata/dbtdec/DBTDEC/321537BF1BE47143E063E730850AA965/datafile/o1_mf_tbs01_mz69cvrf_.dbf oracle@target_server:/u02/app/oracle/oradata/okvdbc/OKVDBC/323B892160327BC5E063E730850A8FEA/datafile/ ### Copy the expdp dump file to the destination server location. $ scp /u01/app/odaorabase0/oracle/dpdump/ttsps_dir/expttps.dmp oracle@<target_server>:/<location> cp /u02/app/oracle/oradata/dbtdec/tde/ewallet.p12 oracle@target_server:/tmp/dbtdec/tde ### ### In source database, set the tablespace back to read write mode ### Connect to database using SQLPLUS as sysdba user and run the following ### $ sqlplus /nolog SQL> connect / as sysdba SQL> alter session set container=pdb ; Session altered. SQL> ALTER TABLESPACE TBS01 READ WRITE; SQL> exit;
ステップ2: Oracle Key Vault対応データベースへの表領域のインポート
- 宛先データベースとして、Oracle Key Vaultを使用するTDE対応データベースOKVDBCが存在することを確認します。
expdp
およびimpdp
を使用して、ソース・データベースのデータ・ファイルおよび表領域をこのデータベースにコピーします。ブラウザ・ユーザー・インタフェース(BUI)またはODACLIコマンドを使用して、Oracle Database Applianceにデータベースを作成します。たとえば:# odacli create-database -n okvdbc -t -kt okv -ocp /tmp/okvdbc_on_<server_name>/okvclient.jar -dh 265412be-2b21-4cc4-adc7-c845bf9e3e3a -r ACFS --cdb -d pdbadmin -p pdb # odacli describe-database -n okvdbc Database details ---------------------------------------------------------------- ID: 045c22d6-96ed-47d7-95b9-7c9923d94fd9 Description: okvdbc DB Name: okvdbc DB Type: SI CDB: true PDB Name: pdb PDB Admin User Name: pdbadmin Storage: ACFS Home ID: 265412be-2b21-4cc4-adc7-c845bf9e3e3a TDE Wallet Management: ODA TDE Enabled: true KeystoreType : OKV ### ### login as Oracle user ### Connect to database using SQLPLUS as sysdba user and run the following ### Take a note of PDB GUID which helps to determine the path of PDB datafile ### $ sqlplus /nolog SQL> connect / as sysdba SQL> col PDB_NAME for a20 SQL> select PDB_NAME,GUID from dba_pdbs ; PDB_NAME GUID -------------------- -------------------------------- PDB 323B892160327BC5E063E730850A8FEA PDB$SEED 323B5ABA63C6340CE063E730850A4161 SQL> exit;
- そのPDB用のサービスおよびTNS名を作成します。
### ### Create service for PDB database and add TNS alias for PDB to $ORACLE_HOME/network/admin/tnsnames.ora ### $ srvctl add service -db okvdbc -service okvdbc_pdb -pdb pdb -role PRIMARY -policy AUTOMATIC $ srvctl start service -db okvdbc -service okvdbc_pdb OKVDBC_PDB = (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = <server-name>)(PORT = 1521)) (CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME = okvdbcpdb.servicename)
- インポート用にデータベース・ディレクトリをそのPDBに作成します。
### ### login as Oracle user and run the following ### # su - oracle $ mkdir -pv /u01/app/odaorabase0/oracle/dpdump/ttsps_dir mkdir: created directory ‘/u01/app/odaorabase0/oracle/dpdump/ttsps_dir’ ### ### Connect to database using SQLPLUS as sysdba user and run the following ### $ sqlplus /nolog SQL> connect / as sysdba SQL> ALTER SESSION SET CONTAINER=PDB ; SQL> CREATE DIRECTORY ttsps_dir AS '/u01/app/odaorabase0/oracle/dpdump/ttsps_dir'; Directory created. SQL> exit;
- ウォレット・キーを、ソースから宛先データベース内のOKVDBCウォレットにアップロードします。impdpでその表領域が認識されるようにするには、ソフトウェア・キーストアのウォレットの内容を、Oracle Key Vaultが有効になっている宛先データベースにアップロードします。ウォレットを宛先サーバーにコピーし、ウォレット用の一時エンドポイントを作成し、ウォレットの内容をアップロードし、その一時エンドポイントとソース・データベース・ウォレットを削除します。
### ### login as Oracle user ### Upload the software keystore wallet entries to OKV server wallet ### $ cd /etc/OKV/okvdbc/okv/bin/ $ ./okvutil list Enter Oracle Key Vault endpoint password: Unique ID Type Identifier 2299AD61-915F-4568-82EA-2E07FDF8F129 Symmetric Key TDE Master Encryption Key: TAG okvdbc 51EA3595-433A-4FE8-BCAA-A2FBB768F88A Symmetric Key TDE Master Encryption Key: TAG okvdbc A7A80EB2-899F-47B3-8050-3A8C76ED449B Symmetric Key TDE Master Encryption Key: TAG okvdbc_pdb A7C3463B-B8AD-45A3-A31C-E8BABAB1289F Template Default template for OKVDBC_ON_<SERVER-NAME> $ ./okvutil upload -t WALLET -l /tmp/dbtdec/tde -g okvdbc_on_<server_name>-c -v 4 -o okvutil version 21.10.0.0.0 Endpoint type: Oracle Database Configuration file: /etc/OKV/okvdbc/okv/conf/okvclient.ora Server: 100.70.126.204:5696 Standby Servers: Uploading from /tmp/dbtdec/tde Enter source wallet password: No auto-login wallet found, password needed Enter Oracle Key Vault endpoint password: ORACLE.SECURITY.ID.ENCRYPTION. Trying to connect to 100.70.126.204:5696 ... Connected to 100.70.126.204:5696. ORACLE.SECURITY.KB.ENCRYPTION. ORACLE.SECURITY.KT.ENCRYPTION.AecOmWLewk8dv1z3KsizxucAAAAAAAAAAAAAAAAAAAAAAAAAAAAA ORACLE.SECURITY.KM.ENCRYPTION.AecOmWLewk8dv1z3KsizxucAAAAAAAAAAAAAAAAAAAAAAAAAAAAA ORACLE.SECURITY.DB.ENCRYPTION.AecOmWLewk8dv1z3KsizxucAAAAAAAAAAAAAAAAAAAAAAAAAAAAA ORACLE.SECURITY.KT.ENCRYPTION.AV35lc5etE+Av4EsIkDeWjsAAAAAAAAAAAAAAAAAAAAAAAAAAAAA ORACLE.SECURITY.KM.ENCRYPTION.AV35lc5etE+Av4EsIkDeWjsAAAAAAAAAAAAAAAAAAAAAAAAAAAAA ORACLE.SECURITY.DB.ENCRYPTION.AV35lc5etE+Av4EsIkDeWjsAAAAAAAAAAAAAAAAAAAAAAAAAAAAA ORACLE.SECURITY.DB.ENCRYPTION.MASTERKEY.321537BF1BE47143E063E730850AA965 ORACLE.SECURITY.DB.ENCRYPTION.MASTERKEY Uploaded 2 TDE keys Uploaded 0 SEPS entries Uploaded 0 other secrets Uploaded 4 opaque objects Uploading private key Uploading certificate request Uploading trust points Uploaded 1 private keys Uploaded 1 certificate requests Uploaded 0 user certificates Uploaded 0 trust points Upload succeeded ### ### Comparing the output of 'okvutil list' shows that TDE Wallet Keys were uploaded to OKV wallet ### $ ./okvutil list Enter Oracle Key Vault endpoint password: Unique ID Type Identifier 0CDCC93D-EEEA-4760-848F-2162D0074B20 Opaque Object TDE Wallet Metadata 2299AD61-915F-4568-82EA-2E07FDF8F129 Symmetric Key TDE Master Encryption Key: TAG okvdbc 3616D7C9-1025-4093-BEC4-1DD2BAC8047C Opaque Object TDE Wallet Metadata 3F716086-2740-4688-82C3-428B6DA55720 Private Key - 5130AEF7-AA35-57B1-8EB7-88A297867B7F Symmetric Key TDE Master Encryption Key: TAG set_master_key 51EA3595-433A-4FE8-BCAA-A2FBB768F88A Symmetric Key TDE Master Encryption Key: TAG okvdbc 60769770-17A6-4D77-B5AF-80E870B3E95E Opaque Object TDE Wallet Metadata 75E9B037-2FA4-45DD-A4D1-FA1A07102602 Opaque Object TDE Wallet Metadata 9B72895D-8551-5792-B3E5-90DC76BE1EBA Symmetric Key TDE Master Encryption Key: TAG set_master_key A7A80EB2-899F-47B3-8050-3A8C76ED449B Symmetric Key TDE Master Encryption Key: TAG okvdbc_pdb A7C3463B-B8AD-45A3-A31C-E8BABAB1289F Template Default template for OKVDBC_ON_<SERVER-NAME> DDF529BA-348A-4FF3-8F31-73C170749956 Opaque Object Certificate Request $ rm -rf /tmp/dbtdec/tde
- TBS01表領域をOKVDBC上の宛先データベースPDBコンテナにインポートします。impdpにより、以前にコピーしたダンプ・ファイルを使用して宛先データベースに表領域メタデータが追加されます。TRANSPORT_DATAFILESでは、宛先データベース内のデータファイルの場所が参照されています。
### ### login as Oracle user ### Run impdb as SYSTEM user, password for SYSTEM need to be entered when prompted ### # su - oracle $ impdp system@okvdbc_pdb TRANSPORT_DATAFILES=\'/u02/app/oracle/oradata/okvdbc/OKVDBC/323B892160327BC5E063E730850A8FEA/datafile/o1_mf_tbs01_mz69cvrf_.dbf\' DIRECTORY=ttsps_dir dumpfile=expttps_dbtdec.dmp Import: Release 19.0.0.0.0 - Production on Mon Apr 7 20:49:35 2025 Version 19.27.0.0.0 Copyright (c) 1982, 2019, Oracle and/or its affiliates. All rights reserved. Password: Connected to: Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production Master table "SYSTEM"."SYS_IMPORT_TRANSPORTABLE_01" successfully loaded/unloaded Starting "SYSTEM"."SYS_IMPORT_TRANSPORTABLE_01": system/********@okvdbc_pdb TRANSPORT_DATAFILES='/u02/app/oracle/oradata/okvdbc/OKVDBC/323B892160327BC5E063E730850A8FEA/datafile/o1_mf_tbs01_mz69cvrf_.dbf' DIRECTORY=ttsps_dir dumpfile=expttps_dbtdec.dmp Processing object type TRANSPORTABLE_EXPORT/PLUGTS_BLK Processing object type TRANSPORTABLE_EXPORT/TABLE Processing object type TRANSPORTABLE_EXPORT/STATISTICS/TABLE_STATISTICS Processing object type TRANSPORTABLE_EXPORT/STATISTICS/MARKER Processing object type TRANSPORTABLE_EXPORT/POST_INSTANCE/PLUGTS_BLK Job "SYSTEM"."SYS_IMPORT_TRANSPORTABLE_01" successfully completed at Mon Apr 7 20:50:06 2025 elapsed 0 00:00:16
- 宛先のOKVDBCデータベースのPDBで表領域のステータスを変更し、表領域の暗号化をテストします。
### ### login as Oracle user ### Connect to database using SQLPLUS as sysdba user and run the following ### # su - oracle $ sqlplus /nolog SQL> connect / as sysdba SQL> alter session set container=pdb ; Session altered. SQL> select TABLESPACE_NAME, STATUS , ENCRYPTED from dba_tablespaces ; TABLESPACE_NAME STATUS ENC ------------------------------ --------- --- SYSTEM ONLINE YES SYSAUX ONLINE YES UNDOTBS1 ONLINE YES USERS ONLINE YES TEMP_ENC ONLINE YES TBS01 READ ONLY YES SQL> alter tablespace TBS01 read write ; Tablespace altered. SQL> select TABLESPACE_NAME, STATUS , ENCRYPTED from dba_tablespaces ; TABLESPACE_NAME STATUS ENC ------------------------------ --------- --- SYSTEM ONLINE YES SYSAUX ONLINE YES UNDOTBS1 ONLINE YES USERS ONLINE YES TEMP_ENC ONLINE YES TBS01 ONLINE YES SQL> select FILE_NAME from dba_data_files where TABLESPACE_NAME='TBS01' ; FILE_NAME ------------------------------------------------------------------------------------------------------------------------------------ /u02/app/oracle/oradata/okvdbc/OKVDBC/323B892160327BC5E063E730850A8FEA/datafile/o1_mf_tbs01_mz69cvrf_.dbf ### ### Retrieve the data from TAB1 ### SQL> select OWNER, table_name from tab1 where rownum < 3 OWNER -------------------------------------------------------------------------------- TABLE_NAME -------------------------------------------------------------------------------- SYS TS$ SYS ICOL$
ソフトウェア・キーストアを使用するTDE対応Oracle ASMデータベースからOracle Key Vaultキーストアを使用する別のTDE対応マルチテナント・データベースへの表領域の移行
ソフトウェア・キーストアを使用するTDE対応Oracle ASMデータベースからOracle Key Vaultキーストアを使用する別のTDE対応マルチテナント・データベースに表領域を移行する方法を理解しましょう。
ステップ1: ソース・データベースからの表領域のエクスポート
- ソース・データベースに、宛先データベースに移行する表領域TBS01があるとします。その表領域に関する情報を指定します。
### ### login as Oracle user ### Connect to database using SQLPLUS as sysdba user and run the following ### # su - oracle $ sqlplus /nolog SQL> connect / as sysdba Connected. SQL> select TABLESPACE_NAME, ENCRYPTED from dba_tablespaces ; TABLESPACE_NAME ENC ------------------------------ --- SYSTEM YES SYSAUX YES UNDOTBS1 YES USERS YES TEMP_ENC YES TBS01 YES SQL> select FILE_NAME from dba_data_files where TABLESPACE_NAME='TBS01' ; FILE_NAME -------------------------------------------------------------------------------- +DATA/DBASMC/DATAFILE/tbs01.268.1197828959 ### ### Make sure the set of tablespaces are self-contained. The following PL/SQL command must execute successfully ### SQL> EXECUTE DBMS_TTS.TRANSPORT_SET_CHECK('tbs01',true) ; PL/SQL procedure successfully completed. SQL> exit;
- ソース・データベースDBASMCからTBS01表領域をエクスポートします。まず、コピーする表領域をREAD ONLYモードに設定します。次に、指定した表領域に対して
expdp
を実行します。データベース・ディレクトリttsps_dir
に格納されているexpdp
のダンプ・ファイルを確認します。### ### Set the tablespaces that you need to be exported in read-only mode ### login as Oracle user ### Connect to database using SQLPLUS as sysdba user and run the following # su - oracle $ sqlplus /nolog SQL> connect / as sysdba SQL> ALTER TABLESPACE TBS01 READ ONLY; Tablespace altered. SQL> exit; ### ### Run expdb as SYSTEM user, password for SYSTEM need to be entered when prompted ### $ expdp system TRANSPORT_TABLESPACES=TBS01 TRANSPORT_FULL_CHECK=YES DIRECTORY=ttsps_dir DUMPFILE=expttps_dbasm.dmp Export: Release 19.0.0.0.0 - Production on Mon Apr 7 18:19:28 2025 Version 19.27.0.0.0 Copyright (c) 1982, 2019, Oracle and/or its affiliates. All rights reserved. Password: Connected to: Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production Starting "SYSTEM"."SYS_EXPORT_TRANSPORTABLE_01": system/******** TRANSPORT_TABLESPACES=TBS01 TRANSPORT_FULL_CHECK=YES DIRECTORY=ttsps_dir DUMPFILE=expttps_dbasm.dmp ORA-39396: Warning: exporting encrypted data using transportable option without password Processing object type TRANSPORTABLE_EXPORT/STATISTICS/TABLE_STATISTICS Processing object type TRANSPORTABLE_EXPORT/PLUGTS_BLK Processing object type TRANSPORTABLE_EXPORT/POST_INSTANCE/PLUGTS_BLK Processing object type TRANSPORTABLE_EXPORT/TABLE Master table "SYSTEM"."SYS_EXPORT_TRANSPORTABLE_01" successfully loaded/unloaded ****************************************************************************** Dump file set for SYSTEM.SYS_EXPORT_TRANSPORTABLE_01 is: /u01/app/odaorabase0/oracle/dpdump/ttsps_dir/expttps_dbasm.dmp ****************************************************************************** Datafiles required for transportable tablespace TBS01: +DATA/DBASMC/DATAFILE/tbs01.268.1197828959 Job "SYSTEM"."SYS_EXPORT_TRANSPORTABLE_01" completed with 1 error(s) at Mon Apr 7 18:19:52 2025 elapsed 0 00:00:18
- Oracle ASMからソース・サーバー上のファイル・システムにデータファイルをコピーします。次に、表領域のステータスを
READ WRITE
に変更します。### ### login to grid user ### Copy datafile from ASM to filesystem ### # su - grid $ asmcmd cp DATA/DBASMC/DATAFILE/tbs01.268.1197828959 copying DATA/DBASMC/DATAFILE/tbs01.268.1197828959 -> /home/grid/tbs01.dbf ### ### In source database, set the tablespace back to read write mode ### login as Oracle user ### Connect to database using SQLPLUS as sysdba user and run the following ### # su - oracle $ sqlplus /nolog SQL> connect / as sysdba SQL> ALTER TABLESPACE TBS01 READ WRITE; SQL> exit;
- ソース・データベースのソフトウェア・キーストア・ウォレットをターゲット・サーバー上のファイル・システムにコピーします。
SQL> administer key management create keystore '/tmp/DBASMC/tde' identified by "<password>"; keystore altered. SQL> administer key management merge keystore '+DATA/DBASMC/tde' identified by "<password>" into existing keystore '/tmp/DBASMC/tde' identified by "<password>" with backup ; keystore altered.
-
expdp
のダンプ・ファイルを宛先データベース・サーバーにコピーします。/u01/app/odaorabase0/oracle/dpdump/ttsps_dir
からターゲット・データベース・サーバーにデータファイルをコピーします。The expdp and impdp directory is the same in this case, so, no copy is necessary, for remote copy dumpfile using similar this command $ scp /u01/app/odaorabase0/oracle/dpdump/ttsps_dir/expttps_dbasm.dmp oracle@target_server:/location
ステップ2: Oracle Key Vault対応データベースへの表領域のインポート
- 宛先データベースとして、Oracle Key Vaultを使用するTDE対応データベースOKVASMCが存在することを確認します。
expdp
およびimpdp
を使用して、ソース・データベースのデータ・ファイルおよび表領域をこのデータベースにコピーします。ブラウザ・ユーザー・インタフェース(BUI)またはODACLIコマンドを使用して、Oracle Database Applianceにデータベースを作成します。たとえば:# odacli create-database -n okvasmc -t -kt okv -ocp /tmp/okvasmc_on_<server_name>/okvclient.jar -dh 265412be-2b21-4cc4-adc7-c845bf9e3e3a -r ASM --cdb -d pdbadmin -p pdb # odacli describe-database -n okvasmc Database details ---------------------------------------------------------------- ID: dc9f9d7b-7e22-4997-bb20-4a3adcc764a4 Description: okvasmc DB Name: okvasmc DB Type: SI CDB: true PDB Name: pdb PDB Admin User Name: pdbadmin Storage: ASM Home ID: 265412be-2b21-4cc4-adc7-c845bf9e3e3a TDE Wallet Management: ODA TDE Enabled: true KeystoreType : OKV ### ### login as Oracle user ### Connect to database using SQLPLUS as sysdba user and run the following ### # su - oracle $ sqlplus /nolog SQL> connect / as sysdba SQL> col PDB_NAME for a20 SQL> select PDB_NAME,GUID from dba_pdbs ; PDB_NAME GUID -------------------- -------------------------------- PDB 3247726469554039E063E730850A5A00 PDB$SEED 324743827B457329E063E730850A27E7 SQL> exit ;
- ファイル・システムからOKVASMCの宛先Oracle ASMの場所にデータファイルをコピーし、データファイルのコピー後にそれらの権限を正しく設定します。
### ### login to grid user ### # su - grid $ asmcmd cp /home/grid/tbs01.dbf +DATA/OKVASMC/3247726469554039E063E730850A5A00/DATAFILE/tbs01 --dest_dbname OKVASMC copying /home/grid/tbs01.dbf -> +DATA/OKVASMC/3247726469554039E063E730850A5A00/DATAFILE/tbs01 $ asmcmd ASMCMD> pwd +DATA/OKVASMC/3247726469554039E063E730850A5A00/DATAFILE ASMCMD> ls --permission User Group Permission Name oracle@3fe6130d68b04fc6ffab5b96ff256f8e OKVASMC_PDB rw------- SYSAUX.337.1197886103 oracle@3fe6130d68b04fc6ffab5b96ff256f8e OKVASMC_PDB rw------- SYSTEM.330.1197886099 oracle@3fe6130d68b04fc6ffab5b96ff256f8e OKVASMC_PDB rw------- UNDOTBS1.338.1197886107 oracle@3fe6130d68b04fc6ffab5b96ff256f8e OKVASMC_PDB rw------- USERS.336.1197886111 grid@3fe6130d68b04fc6ffab5b96ff256f8e rw------- tbs01 => +DATA/OKVASMC/DATAFILE/tbs01.339.1197886535 ASMCMD> chown oracle@3fe6130d68b04fc6ffab5b96ff256f8e:OKVASMC_PDB tbs01 ASMCMD> ASMCMD> ls --permission User Group Permission Name oracle@3fe6130d68b04fc6ffab5b96ff256f8e OKVASMC_PDB rw------- SYSAUX.337.1197886103 oracle@3fe6130d68b04fc6ffab5b96ff256f8e OKVASMC_PDB rw------- SYSTEM.330.1197886099 oracle@3fe6130d68b04fc6ffab5b96ff256f8e OKVASMC_PDB rw------- UNDOTBS1.338.1197886107 oracle@3fe6130d68b04fc6ffab5b96ff256f8e OKVASMC_PDB rw------- USERS.336.1197886111 oracle@3fe6130d68b04fc6ffab5b96ff256f8e OKVASMC_PDB rw------- tbs01 => +DATA/OKVASMC/DATAFILE/tbs01.339.1197886535
- そのPDB用のサービスおよびTNS名を作成します。
### ### Create service for PDB database and add TNS alias for PDB to $ORACLE_HOME/network/admin/tnsnames.ora ### $ srvctl add service -db okvasmc -service okvasmc_pdb -pdb pdb -role PRIMARY -policy AUTOMATIC $ srvctl start service -db okvasmc -service okvasmc_pdb OKVASMC_PDB = (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = <server-name>)(PORT = 1521)) (CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME = okvasmc_pdb.service)
- インポート用にデータベース・ディレクトリをそのPDBに作成します。
### ### login as Oracle user and run the following ### # su - oracle $ mkdir -pv /u01/app/odaorabase0/oracle/dpdump/ttsps_dir mkdir: created directory ‘/u01/app/odaorabase0/oracle/dpdump/ttsps_dir’ ### ### Connect to database using SQLPLUS as sysdba user and run the following ### $ sqlplus /nolog SQL> connect / as sysdba SQL> ALTER SESSION SET CONTAINER=PDB ; SQL> CREATE DIRECTORY ttsps_dir AS '/u01/app/odaorabase0/oracle/dpdump/ttsps_dir'; Directory created. SQL> exit;
- ウォレット・キーを、ソースから宛先データベース内のOKVASMCのOracle Key Vaultウォレットにアップロードします。impdpでその表領域が認識されるようにするには、ソフトウェア・キーストアのウォレットの内容を、Oracle Key Vaultが有効になっている宛先データベースにアップロードします。
### ### login as Oracle user ### Upload the software keystore wallet entries to OKV server wallet ### $ cd /etc/OKV/okvasmc/okv/bin/ $ ./okvutil list Enter Oracle Key Vault endpoint password: Unique ID Type Identifier 20D37B20-78C2-4679-8B56-B50F184B5D61 Symmetric Key TDE Master Encryption Key: TAG okvasmc 40A3C0F2-CED1-497F-8C70-13A6E69AC0F7 Symmetric Key TDE Master Encryption Key: TAG okvasmc_pdb 9E0B4E98-2249-4159-9B12-04A60980D25E Template Default template for OKVASMC_ON_<SERVER-NAME> B4569785-465C-4906-8C82-3736A15ED3E7 Symmetric Key TDE Master Encryption Key: TAG okvasmc $ ./okvutil upload -t WALLET -l /tmp/DBASMC/tde -g okvasmc_on_<server_name>-c -v 4 -o okvutil version 21.10.0.0.0 Endpoint type: Oracle Database Configuration file: /etc/OKV/okvasmc/okv/conf/okvclient.ora Server: 100.70.126.204:5696 Standby Servers: Uploading from /tmp/DBASMC/tde Enter source wallet password: No auto-login wallet found, password needed Enter Oracle Key Vault endpoint password: ORACLE.SECURITY.KB.ENCRYPTION. Trying to connect to 100.70.126.204:5696 ... Connected to 100.70.126.204:5696. ORACLE.SECURITY.ID.ENCRYPTION. ORACLE.SECURITY.KT.ENCRYPTION.AYGo9jtJAk+JvwRLClz4E7wAAAAAAAAAAAAAAAAAAAAAAAAAAAAA ORACLE.SECURITY.KM.ENCRYPTION.AYGo9jtJAk+JvwRLClz4E7wAAAAAAAAAAAAAAAAAAAAAAAAAAAAA ORACLE.SECURITY.DB.ENCRYPTION.AYGo9jtJAk+JvwRLClz4E7wAAAAAAAAAAAAAAAAAAAAAAAAAAAAA ORACLE.SECURITY.KT.ENCRYPTION.Afk3edvpTU8yv82U/FM99CoAAAAAAAAAAAAAAAAAAAAAAAAAAAAA ORACLE.SECURITY.KM.ENCRYPTION.Afk3edvpTU8yv82U/FM99CoAAAAAAAAAAAAAAAAAAAAAAAAAAAAA ORACLE.SECURITY.DB.ENCRYPTION.Afk3edvpTU8yv82U/FM99CoAAAAAAAAAAAAAAAAAAAAAAAAAAAAA ORACLE.SECURITY.DB.ENCRYPTION.MASTERKEY.3215781D91701754E063E730850A04B1 ORACLE.SECURITY.DB.ENCRYPTION.MASTERKEY Uploaded 2 TDE keys Uploaded 0 SEPS entries Uploaded 0 other secrets Uploaded 4 opaque objects Uploading private key Uploading certificate request Uploading trust points Uploaded 1 private keys Uploaded 1 certificate requests Uploaded 0 user certificates Uploaded 0 trust points Upload succeeded ### ### Comparing the output of 'okvutil list' shows that TDE Wallet Keys were uploaded to OKV wallet ### $ ./okvutil list Enter Oracle Key Vault endpoint password: Unique ID Type Identifier 1D4F6104-FAFE-42C5-AE3E-F9B46BCA51CA Opaque Object Certificate Request 20D37B20-78C2-4679-8B56-B50F184B5D61 Symmetric Key TDE Master Encryption Key: TAG okvasmc 2F4FCE20-A679-415A-B2E9-F4F80A28576A Opaque Object TDE Wallet Metadata 40A3C0F2-CED1-497F-8C70-13A6E69AC0F7 Symmetric Key TDE Master Encryption Key: TAG okvasmc_pdb 41B0D244-BAC0-5311-A624-3BB0496C8BE9 Symmetric Key TDE Master Encryption Key: TAG set_master_key 74A196AC-3C9E-49B5-A10B-19F2DFB3D27B Opaque Object TDE Wallet Metadata 87793E99-E79C-4855-8CF1-5C463DCFCE60 Opaque Object TDE Wallet Metadata 9E0B4E98-2249-4159-9B12-04A60980D25E Template Default template for OKVASMC_ON_<SERVER-NAME> B4569785-465C-4906-8C82-3736A15ED3E7 Symmetric Key TDE Master Encryption Key: TAG okvasmc E31121D2-5A43-4D1A-882B-26881FB1D3A2 Private Key - E885E79C-AF01-5856-A066-7292198BF650 Symmetric Key TDE Master Encryption Key: TAG set_master_key F0834140-19A5-4E2F-9AB6-CC4026A0FC62 Opaque Object TDE Wallet Metadata $ rm -rf /tmp/DBASMC/tde
- TBS01表領域を宛先データベースOKVASMCにインポートします。TRANSPORT_DATAFILESは、宛先データベース内のデータ・ファイルの場所を参照します。
### ### login as Oracle user ### Run impdb as SYSTEM user, password for SYSTEM need to be entered when prompted ### # su - oracle $ impdp system@okvasmc_pdb TRANSPORT_DATAFILES=\'+DATA/OKVASMC/3247726469554039E063E730850A5A00/DATAFILE/tbs01\' DIRECTORY=ttsps_dir dumpfile=expttps_dbasmc.dmp Import: Release 19.0.0.0.0 - Production on Tue Apr 8 10:30:00 2025 Version 19.27.0.0.0 Copyright (c) 1982, 2019, Oracle and/or its affiliates. All rights reserved. Password: Connected to: Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production Master table "SYSTEM"."SYS_IMPORT_TRANSPORTABLE_01" successfully loaded/unloaded Starting "SYSTEM"."SYS_IMPORT_TRANSPORTABLE_01": system/********@okvasmc_pdb TRANSPORT_DATAFILES='+DATA/OKVASMC/3247726469554039E063E730850A5A00/DATAFILE/tbs01' DIRECTORY=ttsps_dir dumpfile=expttps_dbasmc.dmp Processing object type TRANSPORTABLE_EXPORT/PLUGTS_BLK Processing object type TRANSPORTABLE_EXPORT/TABLE Processing object type TRANSPORTABLE_EXPORT/STATISTICS/TABLE_STATISTICS Processing object type TRANSPORTABLE_EXPORT/STATISTICS/MARKER Processing object type TRANSPORTABLE_EXPORT/POST_INSTANCE/PLUGTS_BLK Job "SYSTEM"."SYS_IMPORT_TRANSPORTABLE_01" successfully completed at Tue Apr 8 10:30:25 2025 elapsed 0 00:00:17
- 宛先のOracle Key Vaultデータベースで表領域のステータスを変更し、暗号化をテストします。
### ### login as Oracle user ### Connect to database using SQLPLUS as sysdba user and run the following ### # su - oracle $ sqlplus /nolog SQL> connect / as sysdba SQL> alter session set container=pdb ; Session altered. SQL> select TABLESPACE_NAME, STATUS , ENCRYPTED from dba_tablespaces ; TABLESPACE_NAME STATUS ENC ------------------------------ --------- --- SYSTEM ONLINE YES SYSAUX ONLINE YES UNDOTBS1 ONLINE YES USERS ONLINE YES TEMP_ENC ONLINE YES TBS01 READ ONLY YES SQL> alter tablespace TBS01 read write ; Tablespace altered. SQL> select TABLESPACE_NAME, STATUS , ENCRYPTED from dba_tablespaces ; TABLESPACE_NAME STATUS ENC ------------------------------ --------- --- SYSTEM ONLINE YES SYSAUX ONLINE YES UNDOTBS1 ONLINE YES USERS ONLINE YES TEMP_ENC ONLINE YES TBS01 ONLINE YES ### ### Retrieve the data from TAB1 ### SQL> select OWNER, table_name from tab1 where rownum < 3 ; OWNER -------------------------------------------------------------------------------- TABLE_NAME -------------------------------------------------------------------------------- SYS IND$ SYS CDEF$
Oracle Database Applianceでのソフトウェア・キーストアからOracle Key Vaultキーストアへの手動移行
Oracle Database Appliance上で作成されたデータベースについて、表領域をソフトウェア・キーストアからOracle Key Vaultキーストアに移行する方法を理解しましょう
okvclient.jar
ファイルがOracle Database Appliance上にあることを確認します。
- Oracle Key Vaultにログインし、データベースに対応付けられた仮想TDEウォレットを作成します。
- 各インスタンスに対応するエンドポイントを作成します。単一インスタンス・データベースの場合は1つのエンドポイントを作成し、Oracle RACデータベース、Oracle RAC Oneデータベース、および高可用性が有効になっている単一インスタンス・データベースの場合は2つのエンドポイントを作成する必要があります。
- 作成したエンドポイントのデフォルト・ウォレットを設定します。
- 各エンドポイントに対応する
okvclient.jar
ファイルをダウンロードします。単一インスタンス・データベースの場合は、1つのファイルをダウンロードします。Oracle RACデータベースの場合は、ダウンロード可能なファイルが2つ(インスタンスごとに1つ)あります。
- データベース所有者(
oracle
など)として、SQL*Plusに接続し、そのデータベースの新しいWALLET_ROOT
初期化パラメータを構成します。# su - oracle $. oraenv ORACLE_SID = [oracle] ? enter the database SID ORACLE_HOME = [/home/oracle] ? enter the database home path $ sqlplus / as sysdba SQL> ALTER SYSTEM SET WALLET_ROOT='/etc/OKV/dbUniqueName' scope=spfile sid='*'; System altered.
- ウォレット・ルートとTDEディレクトリを作成します。このステップは、Oracle RACデータベース、Oracle RAC One NodeデータベースおよびOracle Database Enterprise Edition高可用性データベースの場合は両方のノードで実行します。
$ mkdir /etc/OKV/dbUniqueName/ $ mkdir /etc/OKV/dbUniqueName/okv $ mkdir /etc/OKV/dbUniqueName/tde
- ソフトウェア・キーストア(ewallet.p12)のファイルを
+DATA/dbUniqueName/tde
の場所から/etc/OKV/dbname/tde
の場所にコピーします。Oracle ASMデータベースの場合は、
+DATA/dbUniqueName/tde
のOracle ASMの場所からそのファイルをコピーします。$. oraenv ORACLE_SID = [oracle] ? enter the database SID ORACLE_HOME = [/home/oracle] ? enter the database home path $ sqlplus / as sysdba SQL> ADMINISTER KEY MANAGEMENT CREATE KEYSTORE '/etc/OKV/dbUniqueName/tde' identified by "current TDE password"; keystore altered. SQL> ADMINISTER KEY MANAGEMENT MERGE KEYSTORE '+DATA/dbUniqueName/tde' identified by "current TDE password" INTO EXISTING KEYSTORE '/etc/OKV/<dbUniqueName>/tde' identified by "current TDE password" WITH BACKUP USING "delete"; keystore altered.
Oracle ACFSデータベースの場合は、/u02/app/oracle/oradata/dbUniqueName/tde
の場所からそのファイルをコピーします。cp /u02/app/oracle/oradata/dbUniqueName/tde/ewallet.p12 /etc/OKV/dbUniqueName/tde
- Oracle Key Vaultエンドポイント・ソフトウェアをインストールします。Oracle RACデータベース、Oracle RAC One NodeデータベースおよびOracle Database Enterprise Edition高可用性データベースの場合は、各インスタンス固有の2つのエンドポイントを作成し、各ノードにインストールする必要があります。そのため、これらのデータベースの場合は両方のノードでこのステップを実行します。データベース・ホームの場所にあるJavaバイナリを使用します。インストールに成功した後は、ステップ4cでリストされているファイルが
/etc/OKV/dbUniqueName/okv/
の場所に存在する必要があります。odacli describe-database
コマンドを使用してデータベース・ホームの場所を見つけ、「Home ID」
を書き留めます。# odacli describe-database -n dbName Database details ---------------------------------------------------------------- ID: 783e9aeb-334d-40d0-8c7a-cb6c343b4b34 Description: dbName DB Name: dbName . . Home ID: b5791c68-9a47-42db-bedc-9c22137a8efd . . CPU Pool Name:
- 環境内に存在するデータベース・ホームをリストし、ステップaでコピーしたIDに対応付けられている
「Home Location」
を記録します。# odacli list-dbhomes ID Name DB Version DB Edition Home Location Status ---------------------------------------- -------------------- -------------------- ---------- -------------------------------------------------------- ---------- b5791c68-9a47-42db-bedc-9c22137a8efd OraDB19000_home2 19.27.0.0.250415 EE /u01/app/odaorahome/oracle/product/19.0.0.0/dbhome_2 CONFIGURED
- ステップ4bで記録したデータベース・ホームの場所にあるJavaバイナリを使用して、データベース・インスタンス用に作成したエンドポイント固有の
okvclient.jar
をインストールします。$ DatabaseHomeLocation/jdk/bin/java -jar okvclient.jar path -d /etc/OKV/dbUniqueName/okv/ Detected JAVA_HOME: /u01/app/odaorahome/oracle/product/19.0.0.0/dbhome_2/jdk/jre Enter new Key Vault endpoint password (enter for auto-login): current TDE password Confirm new Key Vault endpoint password: current TDE password The endpoint software for Oracle Key Vault installed successfully. Deleted the file :<okvclient.jar path
/etc/OKV/dbUniqueName/okv
の場所にあるファイルをリストすることで、okvclient.jar
が正常にインストールされていることを確認します。$ ls -ltR /etc/OKV/dbUniqueName/okv/ /etc/OKV/dbUniqueName/okv/: total 28 drwxr-x--- 2 oracle oinstall 4096 Mar 28 12:18 log drwxr-x--- 2 oracle oinstall 4096 Mar 28 12:18 conf drwxr-x--- 2 oracle oinstall 4096 Mar 28 12:18 ssl drwxr-x--- 2 oracle oinstall 4096 Mar 28 12:18 bin drwxr-x--- 2 oracle oinstall 4096 Mar 28 12:18 lib drwxr-x--- 3 oracle oinstall 4096 Mar 28 12:18 csdk drwxr-x--- 2 oracle oinstall 4096 Mar 28 12:18 jlib /etc/OKV/dbUniqueName/okv/log: total 4 -rw-r----- 1 oracle oinstall 2162 Mar 28 12:18 okvutil.deploy.log /etc/OKV/dbUniqueName/okv/conf: total 12 -rw-r----- 1 oracle oinstall 450 Mar 28 12:18 logging.properties -rw-r----- 1 oracle oinstall 882 Mar 28 12:18 okvclient.ora -rw-r----- 1 oracle oinstall 0 Mar 28 12:18 okvclient.lck -rwx------ 1 oracle oinstall 1009 Mar 28 12:09 okvsshendpoint.conf /etc/OKV/dbUniqueName/okv/ssl: total 8 -rw------- 1 oracle oinstall 4361 Mar 28 12:18 ewallet.p12 /etc/OKV/dbUniqueName/okv/bin: total 8548 -rwxr-x--- 1 oracle oinstall 18108 Mar 28 12:09 ep_healthcheck.sh -rwxr-x--- 1 oracle oinstall 8682112 Mar 28 12:09 okveps.x64 -rwxr-x--- 1 oracle oinstall 29651 Mar 28 12:09 okv_ssh_ep_lookup_authorized_keys -rwxr-x--- 1 oracle oinstall 7721 Mar 28 12:09 okvutil -rwxr-x--- 1 oracle oinstall 5030 Mar 28 12:09 root.sh /etc/OKV/dbUniqueName/okv/lib: total 8708 -rwxr-x--- 1 oracle oinstall 8913371 Mar 28 12:09 liborapkcs.so /etc/OKV/dbUniqueName/okv/csdk: total 4 drwxr-x--- 2 oracle oinstall 4096 Mar 28 12:18 lib /etc/OKV/dbUniqueName/okv/csdk/lib: total 8748 -rwxr-x--- 1 oracle oinstall 8954149 Mar 28 12:09 liborasdk.so /etc/OKV/dbUniqueName/okv/jlib: total 72 -rw-r----- 1 oracle oinstall 71387 Mar 14 2024 okvutil.jar
root
ユーザーとして、root.sh
スクリプトを実行してPKCSライブラリをインストールします。Oracle RACデータベース、Oracle RAC One NodeデータベースおよびOracle Database Enterprise Edition高可用性データベースの場合は、両方のノードでこのステップを実行します。# id -a uid=0(root) gid=0(root) groups=0(root) # /etc/OKV/dbUniqueName/okv/bin/root.sh Creating directory: /opt/oracle/extapi/64/hsm/oracle/1.0.0/ Copying PKCS library to /opt/oracle/extapi/64/hsm/oracle/1.0.0/ Setting PKCS library file permissions Installation successful.
コマンドが正常に実行されたら、このライブラリがインストールされていることを確認します。# id -a uid=0(root) gid=0(root) groups=0(root) # ls -ltr /opt/oracle/extapi/64/hsm/oracle/1.0.0/ total 8708 -rwxr-xr-x 1 root root 8913371 Mar 28 12:33 liborapkcs.so
- ステップ6から13までをデータベース所有者(たとえば、
oracle
)として実行します。ソフトウェア・キーストアewallet.p12
をOracle Key Vaultサーバーにアップロードします。# su - oracle $ /etc/OKV/dbUniqueName/okv/bin/okvutil upload -l /etc/OKV/dbUniqueName/tde -t wallet -g wallet name Enter source wallet password: current TDE password Enter Oracle Key Vault endpoint password: current TDE password Upload succeeded
okvutil list
コマンドを使用して、TDEキーがOracle Key Vaultサーバー上のウォレットにアップロードされていることを確認します:$ /etc/OKV/dbUniqueName/okv/bin/okvutil list Enter Oracle Key Vault endpoint password: Unique ID Type Identifier 8D938C3D-8434-45A4-B6F3-A9405C26B0C5 Opaque Object TDE Wallet Metadata A816E0FB-5CF2-48FF-A29F-5EC7282B4035 Opaque Object TDE Wallet Metadata 121AC7F1-44AC-5537-A705-52BB7DAEDDAA Symmetric Key TDE Master Encryption Key: TAG set_master_key 3977568B-A800-5532-96DB-C196AEA75C2E Symmetric Key TDE Master Encryption Key: TAG set_master_key 3DC733BF-4977-42E0-92E6-D436BBFA206F Opaque Object TDE Wallet Metadata 0640B156-1D2A-4CE4-9608-CDDA004938E2 Opaque Object TDE Wallet Metadata 051ED678-68D2-4DF5-8CE2-41DBAB000003 Private Key - 2E7D00F6-9AC2-4543-B308-0697D9A401CF Opaque Object Certificate Request 4585DCAE-EDD1-4BAA-AD8F-E1FC8AD5E763 Template Default template for TDEDB_707EP1
- ローカル・ノードにそのデータベースのローカル自動ログイン・ウォレットを作成します。
$. oraenv ORACLE_SID = [oracle] ? enter the SID of the local database instance ORACLE_HOME = [/home/oracle] ? enter the database home path $ sqlplus / as sysdba SQL> ADMINISTER KEY MANAGEMENT ADD SECRET 'current TDE password' FOR CLIENT 'OKV_PASSWORD' TO LOCAL AUTO_LOGIN KEYSTORE '/etc/OKV/dbUniqueName/tde'; keystore altered.
Oracle RACデータベースの場合は、リモート・ノード上のリモート・インスタンス用にローカルおよび外部ストアの自動ログイン・ウォレットを作成します。$. oraenv ORACLE_SID = [oracle] ? enter the SID of the remote database instance ORACLE_HOME = [/home/oracle] ? enter the database home path $ sqlplus / as sysdba SQL> ADMINISTER KEY MANAGEMENT ADD SECRET 'current TDE password' FOR CLIENT 'OKV_PASSWORD' TO LOCAL AUTO_LOGIN KEYSTORE '/etc/OKV/dbUniqueName/tde'; keystore altered.
Oracle RAC One Nodeデータベース、および高可用性が有効になっている単一インスタンス・データベースの場合は、リモート・ノードで次のステップに従います:
- ローカル・ノードでそのインスタンスを停止します。
$. oraenv ORACLE_SID = [oracle] ? <enter the SID of the local database instance> ORACLE_HOME = [/home/oracle] ? <enter the database home path> $ sqlplus / as sysdba SQL> shutdown immediate;
- リモート・ノードでそのインスタンスをマウントします。
$. oraenv ORACLE_SID = [oracle] ? enter the SID of the remote database instance ORACLE_HOME = [/home/oracle] ? enter the database home path $ sqlplus / as sysdba SQL> startup nomount;
- ローカル自動ログイン・ウォレットを作成します。
$. oraenv ORACLE_SID = [oracle] ? enter the SID of the remote database instance ORACLE_HOME = [/home/oracle] ? enter the database home path $ sqlplus / as sysdba SQL> ADMINISTER KEY MANAGEMENT ADD SECRET 'current TDE password' FOR CLIENT 'OKV_PASSWORD' TO LOCAL AUTO_LOGIN KEYSTORE '/etc/OKV/dbUniqueName/tde'; keystore altered.
- リモート・ノードでそのインスタンスを停止します。
$. oraenv ORACLE_SID = [oracle] ? enter the SID of the remote database instance ORACLE_HOME = [/home/oracle] ? enter the database home path $ sqlplus / as sysdba SQL> shutdown;
- ローカル・ノードでそのインスタンスをマウントします。
$. oraenv ORACLE_SID = [oracle] ? enter the SID of the local database instance ORACLE_HOME = [/home/oracle] ? enter the database home path $ sqlplus / as sysdba SQL> startup;
- ローカル・ノードでそのインスタンスを停止します。
- SQL*Plusに接続し、そのデータベースの
tde_configuration
初期化パラメータを設定します。$ sqlplus / as sysdba SQL> ALTER SYSTEM SET TDE_CONFIGURATION = "KEYSTORE_CONFIGURATION=OKV|FILE" SCOPE = BOTH sid='*'; System altered.
- そのデータベースを再起動して、ステップ8で設定したデータベース初期化パラメータを適用します。
$ srvctl stop database -d dbUniqueName $ srvctl start database -d dbUniqueName
- SQL*Plusに接続し、このコマンドを実行してTDEキーをOKVに移行します。
$ sqlplus / as sysdba SQL> ADMINISTER KEY MANAGEMENT set key identified by "current TDE password" force keystore migrate using "current TDE password"; keystore altered.
-
/etc/OKV/dbUniqueName/tde
の場所からファイル・ベース・ウォレットewallet.p12のファイルを削除します。$ rm -f /etc/OKV/dbUniqueName/tde/ewallet*
- そのデータベースをもう一度再起動して、ステップ10で実行したキーストア移行を適用します。
$ srvctl stop database -d dbUniqueName $ srvctl start database -d dbUniqueName
- SQL*Plusに接続し、この問合せを実行してウォレットのステータスを確認します。これは「Open」状態である必要があります。「Open」状態でない場合は、データベースを再起動して、Oracle Key Vaultとの通信が正常であることを確認します。
$ sqlplus / as sysdba SQL> select * from v$encryption_wallet; WRL_TYPE -------------------- WRL_PARAMETER -------------------------------------------------------------------------------- STATUS WALLET_TYPE WALLET_OR KEYSTORE FULLY_BAC ------------------------------ -------------------- --------- -------- --------- CON_ID ---------- FILE /etc/OKV/dbUniqueName/tde/ OPEN_NO_MASTER_KEY LOCAL_AUTOLOGIN SECONDARY NONE UNDEFINED 1 WRL_TYPE -------------------- WRL_PARAMETER -------------------------------------------------------------------------------- STATUS WALLET_TYPE WALLET_OR KEYSTORE FULLY_BAC ------------------------------ -------------------- --------- -------- --------- CON_ID ---------- OKV OPEN OKV PRIMARY NONE UNDEFINED 1 WRL_TYPE -------------------- WRL_PARAMETER -------------------------------------------------------------------------------- STATUS WALLET_TYPE WALLET_OR KEYSTORE FULLY_BAC ------------------------------ -------------------- --------- -------- --------- CON_ID ---------- FILE OPEN_NO_MASTER_KEY LOCAL_AUTOLOGIN SINGLE UNITED UNDEFINED 2 WRL_TYPE -------------------- WRL_PARAMETER -------------------------------------------------------------------------------- STATUS WALLET_TYPE WALLET_OR KEYSTORE FULLY_BAC ------------------------------ -------------------- --------- -------- --------- CON_ID ---------- OKV OPEN OKV SINGLE UNITED UNDEFINED 2 WRL_TYPE -------------------- WRL_PARAMETER -------------------------------------------------------------------------------- STATUS WALLET_TYPE WALLET_OR KEYSTORE FULLY_BAC ------------------------------ -------------------- --------- -------- --------- CON_ID ---------- FILE OPEN_NO_MASTER_KEY LOCAL_AUTOLOGIN SECONDARY UNITED UNDEFINED 3 WRL_TYPE -------------------- WRL_PARAMETER -------------------------------------------------------------------------------- STATUS WALLET_TYPE WALLET_OR KEYSTORE FULLY_BAC ------------------------------ -------------------- --------- -------- --------- CON_ID ---------- OKV OPEN OKV PRIMARY UNITED UNDEFINED 3
grid
ユーザーとして、ソフトウェア・キーストアと自動ログイン・ウォレットを削除します。ASMCMDに接続し、+DATA/dbUniqueName/tde
フォルダを削除します。# su - grid $ asmcmd ASMCMD> cd +DATA/dbUniqueName ASMCMD> rm -rf tde/
- そのデータベースのDCSメタデータ内の
KeystoreType
パラメータを更新します。Oracle Database Applianceリリース19.27の場合は、odacli register-database
コマンドを使用して、そのデータベースのMySQLメタデータを更新します。$ odacli register-database -sn database service name -c database class -s database shape
Oracle Key Vaultサーバー構成を使用してデータベースを登録するには、次のコマンドを実行します:$ odacli register-database -sn database service name -c database class -s database shape -osc OKVServerConfigName
- そのデータベースの
keystoreType
パラメータがOKV
に設定されていることを確認します。odacli describe-database -n dbName -j
コマンドを実行し、コマンド出力にあるkeystoreType
パラメータを確認します。Oracle Key Vaultサーバー構成を使用して登録されたデータベースについて、odacli describe-database
コマンドの出力内のokvServerConfigName
パラメータに、そのデータベースで使用されているOracle Key Vaultサーバー構成名が表示されます。$ odacli describe-database -n dbName -j $ odacli describe-database -n tdedb -j { . "name" : "tdedb", "dbName" : "tdedb", "databaseUniqueName" : "tdedb", . . "enableTDE" : true, "tdePassword" : "**********", "tdeWalletManagement" : "ODA", "dbType" : "RAC", "dbRole" : "PRIMARY", "dbTargetNodeNumber" : null, "dbClass" : "OLTP", "dbShape" : "odb1", "dbStorage" : "ASM", . . "keystoreType" : "OKV", "okvServerConfigName" : "NONE" }
TDE対応データベースへのデータの手動による移行および暗号化
Oracle Database Applianceでトランスポータブル表領域をTDE対応データベースに移行する方法を説明します。
- Oracle Database Applianceでの非TDE Oracle ACFSデータベースからOracle ACFSデータベースへの表領域の移行
Oracle Database Applianceで非TDE Oracle ACFSデータベースからOracle Key Vaultが有効になっているOracle ACFSデータベースに表領域を移行する方法を説明します。 - Oracle Database Applianceでの非TDE Oracle ASMデータベースからOracle ASMデータベースへの表領域の移行
Oracle Database Applianceで非TDE Oracle ASMデータベースからOracle Key Vaultが有効になっているOracle ASMデータベースに表領域を移行する方法を説明します。 - Oracle Database Applianceでの非TDE Oracle ACFSデータベースからOracle ACFS CDBデータベースへの表領域の移行
Oracle Database Applianceで非TDE Oracle ACFSデータベースからOracle Key Vaultが有効になっているOracle ACFS CDBデータベースに表領域を移行する方法を説明します。 - Oracle Database Applianceでの非TDE Oracle ASMデータベースからOracle ASM CDBデータベースへの表領域の移行
Oracle Database Applianceで非TDE Oracle ASMデータベースからOracle Key Vaultが有効になっているOracle ASM CDBデータベースに表領域を移行する方法を説明します。
親トピック: TDE対応Oracleデータベースの管理
Oracle Database Applianceでの非TDE Oracle ACFSデータベースからOracle ACFSデータベースへの表領域の移行
Oracle Database Applianceで非TDE Oracle ACFSデータベースからOracle Key Vaultが有効になっているOracle ACFSデータベースに表領域を移行する方法を説明します。
ステップ1: ソース・データベースからの表領域のエクスポート
- ソース・データベースに、宛先データベースに移行する表領域TBS01があるとします。その表領域に関する情報を指定します。
SQL> select TABLESPACE_NAME, ENCRYPTED from dba_tablespaces ; TABLESPACE_NAME STATUS ENC ----------------- --------- --- SYSTEM ONLINE NO SYSAUX ONLINE NO UNDOTBS1 ONLINE NO TEMP ONLINE NO USERS ONLINE NO TBS01 ONLINE NO SQL> select FILE_NAME from dba_data_files where TABLESPACE_NAME='TBS01' ; FILE_NAME -------------------------------------------------------------------------------- /u02/app/oracle/oradata/dbnotde/DBNOTDE/datafile/o1_mf_tbs01_lnlgn65j_.dbf SQL> ### ### Make sure the set of tablespaces are self-contained. The following PL/SQL command must run successfully ### SQL> EXECUTE DBMS_TTS.TRANSPORT_SET_CHECK('tbs01',true) ; PL/SQL procedure successfully completed. SQL> exit;
- エクスポートに使用するデータベース・ディレクトリをソース・データベースDBNOTDEに作成します。
expdp
で使用するデータベース・ディレクトリ・オブジェクトを宛先データベースに作成します。### ### login as oracle user ### $ mkdir -pv /u01/app/odaorabase0/oracle/dpdump/ttsps_dir mkdir: created directory ‘/u01/app/odaorabase0/oracle/dpdump/ttsps_dir’ ### ### Connect to database using SQLPLUS as sysdba user ( sqlplus / as sysdba ) and run the following ### SQL> CREATE DIRECTORY ttsps_dir AS '/u01/app/odaorabase0/oracle/dpdump/ttsps_dir'; Directory created. SQL>
- ソース・データベースDBNOTDEからTBS01表領域をエクスポートします。まず、コピーする表領域をREAD ONLYモードに設定します。次に、指定した表領域に対して
expdp
を実行します。データベース・ディレクトリttsps_dir
に格納されているexpdp
のログ・ファイルを確認します。### ### login as oracle user ### Connect to database using SQLPLUS as sysdba user ( sqlplus / as sysdba ) and run the following ### SQL> ALTER TABLESPACE TBS01 READ ONLY; Tablespace altered. ### ### Run expdb as SYSTEM user, password for SYSTEM need to be entered when prompted ### $ expdp system TRANSPORT_TABLESPACES=TBS01 TRANSPORT_FULL_CHECK=YES DIRECTORY=ttsps_dir DUMPFILE=expttps.dmp Export: Release 19.0.0.0.0 - Production on Mon Nov 6 12:47:00 2023 Version 19.25.0.0.0 Copyright (c) 1982, 2019, Oracle and/or its affiliates. All rights reserved. Password: Connected to: Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production Starting "SYSTEM"."SYS_EXPORT_TRANSPORTABLE_01": system/******** TRANSPORT_TABLESPACES=TBS01 TRANSPORT_FULL_CHECK=YES DIRECTORY=ttsps_dir DUMPFILE=expttps.dmp Processing object type TRANSPORTABLE_EXPORT/STATISTICS/TABLE_STATISTICS Processing object type TRANSPORTABLE_EXPORT/PLUGTS_BLK Processing object type TRANSPORTABLE_EXPORT/POST_INSTANCE/PLUGTS_BLK Processing object type TRANSPORTABLE_EXPORT/TABLE Master table "SYSTEM"."SYS_EXPORT_TRANSPORTABLE_01" successfully loaded/unloaded ****************************************************************************** Dump file set for SYSTEM.SYS_EXPORT_TRANSPORTABLE_01 is: /u01/app/odaorabase0/oracle/dpdump/ttsps_dir/expttps.dmp ****************************************************************************** Datafiles required for transportable tablespace TBS01: /u02/app/oracle/oradata/dbnotde/DBNOTDE/datafile/o1_mf_tbs01_lnlgn65j_.dbf Job "SYSTEM"."SYS_EXPORT_TRANSPORTABLE_01" successfully completed at Mon Nov 6 12:47:19 2023 elapsed 0 00:00:14
- データ・ファイルを宛先データベース・サーバーに移動し、ソース・データベースDBNOTDEのデータ・ファイルのステータスを
READ WRITE
に編集します。データ・ファイルを/u02/app/oracle/oradata/dbtde/DBTDE/datafile
の場所にあるTDE対応データベース・サーバーに移動します。### ### login as oracle user ### $ cp /u02/app/oracle/oradata/dbnotde/DBNOTDE/datafile/o1_mf_tbs01_lnlgn65j_.dbf /u02/app/oracle/oradata/dbtde/DBTDE/datafile/o1_mf_tbs01_lnlgn65j_.dbf ### ### In source database, set the tablespace back to read write mode ### Connect to database using SQLPLUS as sysdba user ( sqlplus / as sysdba ) and run the following ### SQL> ALTER TABLESPACE TBS01 READ WRITE;
ステップ2: TDE対応データベースへの表領域のインポート
- 前の手順の説明に従って、Oracle Key Vaultを使用したTDE対応データベースDBTDEを宛先データベースとして作成します。
expdp
およびimpdp
を使用して、ソース・データベースのデータ・ファイルおよび表領域をこのデータベースにコピーします。ブラウザ・ユーザー・インタフェース(BUI)またはODACLIコマンドを使用して、Oracle Database Applianceにデータベースを作成します。たとえば:# odacli create-database -n dbtde -t -kt okv -osc adminobj1 -dh e2a65596-6435-4410-9e8d-6b21a6005779 -r ACFS # odacli describe-database -n dbtde Database details ---------------------------------------------------------------- ID: e261b9f8-8212-499b-840e-eb6ea3e09447 Description: dbtde DB Name: dbtde DB Type: SI CDB: false Storage: ACFS Home ID: e2a65596-6435-4410-9e8d-6b21a6005779 TDE Wallet Management: ODA TDE Enabled: true KeystoreType : OKV
- インポート操作用に、データベース・ディレクトリをOracle Key Vault対応の宛先データベースに作成します。ソース・データベースのexpdpダンプ・ファイルおよびimpdpの出力は、データベース・ディレクトリ・オブジェクトに格納されます。expdpダンプ・ファイルをソース・データベース・サーバーからこのサーバーにコピーし、impdpダンプ・ファイルを使用して表領域メタデータを宛先データベースに追加します。
### ### login as sysdba user and run the following: ### Connect to database using SQLPLUS as sysdba user ( sqlplus / as sysdba ) and run the following ### SQL> CREATE DIRECTORY ttsps_dir AS '/u01/app/odaorabase0/oracle/dpdump/ttsps_dir'; Directory created.
- TBS01表領域を宛先データベースDBTDEにインポートします。ソース・データベースの
expdp
ダンプ・ファイルをデータベース・ディレクトリttsps_dir
にコピーします。impdp
はダンプ・ファイルを使用して、表領域メタデータを宛先データベースに追加します。TRANSPORT_DATAFILESは、宛先データベース内のデータ・ファイルの場所を参照します。### ### Run impdb as SYSTEM user, password for SYSTEM need to be entered when prompted ### $ impdp system TRANSPORT_DATAFILES=\'/u02/app/oracle/oradata/dbtde/DBTDE/datafile/o1_mf_tbs01_lnlgn65j_.dbf\' DIRECTORY=ttsps_dir dumpfile=expttps.dmp Import: Release 19.0.0.0.0 - Production on Mon Nov 6 12:53:37 2023 Version 19.25.0.0.0 Copyright (c) 1982, 2019, Oracle and/or its affiliates. All rights reserved. Password: Connected to: Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production Master table "SYSTEM"."SYS_IMPORT_TRANSPORTABLE_01" successfully loaded/unloaded Starting "SYSTEM"."SYS_IMPORT_TRANSPORTABLE_01": system/******** TRANSPORT_DATAFILES='/u02/app/oracle/oradata/dbtde/DBTDE/datafile/o1_mf_tbs01_lnlgn65j_.dbf' DIRECTORY=ttsps_dir dumpfile=expttps.dmp Processing object type TRANSPORTABLE_EXPORT/PLUGTS_BLK Processing object type TRANSPORTABLE_EXPORT/TABLE Processing object type TRANSPORTABLE_EXPORT/STATISTICS/TABLE_STATISTICS Processing object type TRANSPORTABLE_EXPORT/POST_INSTANCE/PLUGTS_BLK Job "SYSTEM"."SYS_IMPORT_TRANSPORTABLE_01" successfully completed at Mon Nov 6 12:53:46 2023 elapsed 0 00:00:03
- 宛先のOracle Key Vault対応データベースで暗号化を有効にし、テストします。
### ### login as oracle user ### Connect to database using SQLPLUS as sysdba user ( sqlplus / as sysdba ) and run the following ### SQL> select TABLESPACE_NAME, STATUS , ENCRYPTED from dba_tablespaces ; TABLESPACE_NAME STATUS ENC ------------------------------ --------- --- SYSTEM ONLINE YES SYSAUX ONLINE YES UNDOTBS1 ONLINE YES TEMP ONLINE YES USERS ONLINE YES TBS01 READ ONLY NO SQL> alter tablespace TBS01 read write ; Tablespace altered. ### encrypt TBS01. In case encrypt operation is interrupted , run 'alter tablespace TBS01 encryption online finish encrypt ;' SQL> alter tablespace TBS01 encryption online encrypt ; Tablespace altered. SQL> select TABLESPACE_NAME, STATUS , ENCRYPTED from dba_tablespaces ; TABLESPACE_NAME STATUS ENC ------------------------------ --------- --- SYSTEM ONLINE YES SYSAUX ONLINE YES UNDOTBS1 ONLINE YES TEMP ONLINE YES USERS ONLINE YES TBS01 ONLINE YES ### ### Retrieve the data from TAB1 ### SQL> select OWNER, table_name from tab1 where rownum < 3; OWNER -------------------------------------------------------------------------------- TABLE_NAME -------------------------------------------------------------------------------- SYS TS$ SYS ICOL$ ### ### When the wallet is closed or unavailable, same SQL does not retrieve data ### To simulate wallet absence rename the cwallet.sso wallet under <wallet_root>/tde to some other name like cwallet.sso.orig ### and close the wallet. To return auto-login wallet , rename file back to cwallet.sso and run the SQL again. ### SQL> show parameter wallet_root NAME TYPE VALUE ------------------------------------ ----------- wallet_root string /etc/OKV/dbtde
Oracle Database Applianceでの非TDE Oracle ASMデータベースからOracle ASMデータベースへの表領域の移行
Oracle Database Applianceで非TDE Oracle ASMデータベースからOracle Key Vaultが有効になっているOracle ASMデータベースに表領域を移行する方法を説明します。
ステップ1: ソース・データベースからの表領域のエクスポート
- ソース・データベースに、宛先データベースに移行する表領域TBS01があるとします。その表領域に関する情報を指定します。
SQL> select TABLESPACE_NAME, STATUS , ENCRYPTED from dba_tablespaces ; TABLESPACE_NAME STATUS ENC ------------------------------ --------- --- SYSTEM ONLINE NO SYSAUX ONLINE NO UNDOTBS1 ONLINE NO TEMP ONLINE NO USERS ONLINE NO TBS01 ONLINE NO SQL> SQL> select FILE_NAME from dba_data_files where TABLESPACE_NAME='TBS01' ; FILE_NAME -------------------------------------------------------------------------------- +DATA/ASMNOTDE/DATAFILE/tbs01.374.1152267015 ### ### Checks if a set of tablespaces (to be transported) is self-contained ### SQL> EXECUTE DBMS_TTS.TRANSPORT_SET_CHECK('tbs01',true) ; PL/SQL procedure successfully completed.
- エクスポートに使用するデータベース・ディレクトリをソース・データベースASMNOTDEに作成します。
expdp
の宛先データベースにデータベース・ディレクトリ・オブジェクトを作成します。### ### login as oracle user ### $ mkdir -pv /u01/app/odaorabase0/oracle/dpdump/ttsps_dir mkdir: created directory ‘/u01/app/odaorabase0/oracle/dpdump/ttsps_dir’ ### ### Connect to database using SQLPLUS as sysdba user ( sqlplus / as sysdba ) and run the following ### SQL> CREATE DIRECTORY ttsps_dir AS '/u01/app/odaorabase0/oracle/dpdump/ttsps_dir'; Directory created.
- ソース・データベースASMNOTDEからTBS01表領域をエクスポートします。まず、コピーする表領域をREAD ONLYモードに設定します。次に、指定した表領域に対して
expdp
を実行します。データベース・ディレクトリttsps_dir
に格納されているexpdp
のダンプ・ファイルを確認します。### ### Set the tablespaces that you need to be exported in read-only mode ### login as Oracle user ### Connect to database using SQLPLUS as sysdba user ( sqlplus / as sysdba ) and run the following SQL> ALTER TABLESPACE TBS01 READ ONLY; Tablespace altered. SQL> ### ### Run expdb as SYSTEM user, password for SYSTEM need to be entered when prompted ### $ expdp system TRANSPORT_TABLESPACES=TBS01 TRANSPORT_FULL_CHECK=YES DIRECTORY=ttsps_dir DUMPFILE=expttpsasm.dmp Export: Release 19.0.0.0.0 - Production on Tue Nov 7 10:12:19 2023 Version 19.25.0.0.0 Copyright (c) 1982, 2019, Oracle and/or its affiliates. All rights reserved. Password: Connected to: Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production Starting "SYSTEM"."SYS_EXPORT_TRANSPORTABLE_01": system/******** TRANSPORT_TABLESPACES=TBS01 TRANSPORT_FULL_CHECK=YES DIRECTORY=ttsps_dir DUMPFILE=expttpsasm.dmp Processing object type TRANSPORTABLE_EXPORT/STATISTICS/TABLE_STATISTICS Processing object type TRANSPORTABLE_EXPORT/PLUGTS_BLK Processing object type TRANSPORTABLE_EXPORT/POST_INSTANCE/PLUGTS_BLK Processing object type TRANSPORTABLE_EXPORT/TABLE Master table "SYSTEM"."SYS_EXPORT_TRANSPORTABLE_01" successfully loaded/unloaded ****************************************************************************** Dump file set for SYSTEM.SYS_EXPORT_TRANSPORTABLE_01 is: /u01/app/odaorabase0/oracle/dpdump/ttsps_dir/expttpsasm.dmp ****************************************************************************** Datafiles required for transportable tablespace TBS01: +DATA/ASMNOTDE/DATAFILE/tbs01.374.1152267015 Job "SYSTEM"."SYS_EXPORT_TRANSPORTABLE_01" successfully completed at Tue Nov 7 10:12:49 2023 elapsed 0 00:00:20
- データ・ファイルを宛先データベース・サーバーに移動し、ソース・データベースASMNOTDEのデータ・ファイルのステータスを
READ WRITE
に編集します。### ### login to grid user ### Copying datafiles from ASM to filesystem ### $ asmcmd cp +DATA/ASMNOTDE/DATAFILE/tbs01.295.1165369089 /home/grid/tbs01.dbf copying +DATA/ASMNOTDE/DATAFILE/tbs01.295.1165369089 -> /home/grid/tbs01.dbf ### ### In source database, set the tablespace back to read write mode ### login as Oracle user ### Connect to database using SQLPLUS as sysdba user ( sqlplus / as sysdba ) and run the following ### SQL> ALTER TABLESPACE TBS01 READ WRITE;
ステップ2: TDE対応データベースへの表領域のインポート
- Oracle Key Vaultを使用したTDE対応データベースASMTDEを宛先データベースとして作成します。
expdp
およびimpdp
を使用して、ソース・データベースのデータ・ファイルおよび表領域をこのデータベースにコピーします。ブラウザ・ユーザー・インタフェース(BUI)またはODACLIコマンドを使用して、Oracle Database Applianceにデータベースを作成します。たとえば:# odacli create-database -n asmtde -t -kt okv -osc adminobj1 -dh e2a65596-6435-4410-9e8d-6b21a6005779 -r ASM # odacli describe-database -n asmtde Database details ---------------------------------------------------------------- ID: 5dfa97d9-d774-4a4a-93a2-d21a36faf283 Description: asmtde DB Name: asmtde DB Type: SI CDB: false Storage: ASM Home ID: e2a65596-6435-4410-9e8d-6b21a6005779 TDE Wallet Management: ODA TDE Enabled: true KeystoreType : OKV
- ファイル・システムからASMTDEの宛先Oracle ASMの場所にデータ・ファイルをコピーします。
### ### login to grid user ### $ asmcmd cp /home/grid/tbs01.dbf +DATA/ASMTDE/DATAFILE/tbs01 --dest_dbname ASMTDE copying /home/grid/tbs01.dbf -> +DATA/ASMTDE/DATAFILE/tbs01 ASMCMD> ls --permission User Group Permission Name dbusr1@66d5786e6a057fd3bfa6ca745d993aef rw------- SYSAUX.292.1165368127 dbusr1@66d5786e6a057fd3bfa6ca745d993aef rw------- SYSTEM.279.1165368093 dbusr1@66d5786e6a057fd3bfa6ca745d993aef rw------- UNDOTBS1.290.1165368143 dbusr1@66d5786e6a057fd3bfa6ca745d993aef rw------- USERS.288.1165368875 grid@66d5786e6a057fd3bfa6ca745d993aef rw------- tbs01 => +DATA/ASMTDE/DATAFILE/tbs01.294.1165425531 grid@66d5786e6a057fd3bfa6ca745d993aef rw------- tbs01.294.1165425531 ASMCMD> chown dbusr1@66d5786e6a057fd3bfa6ca745d993aef tbs01 ASMCMD> ls --permission User Group Permission Name dbusr1@66d5786e6a057fd3bfa6ca745d993aef rw------- SYSAUX.292.1165368127 dbusr1@66d5786e6a057fd3bfa6ca745d993aef rw------- SYSTEM.279.1165368093 dbusr1@66d5786e6a057fd3bfa6ca745d993aef rw------- UNDOTBS1.290.1165368143 dbusr1@66d5786e6a057fd3bfa6ca745d993aef rw------- USERS.288.1165368875 dbusr1@66d5786e6a057fd3bfa6ca745d993aef rw------- tbs01 => +DATA/OKVDB2/DATAFILE/tbs012.294.1165425531 dbusr1@66d5786e6a057fd3bfa6ca745d993aef rw------- tbs01.294.1165425531
- インポート用に、データベース・ディレクトリをASMTDEデータベースに作成します。
### ### login as oracle user ### Connect to database using SQLPLUS as sysdba user ( sqlplus / as sysdba ) and run the following ### SQL> CREATE DIRECTORY ttsps_dir AS '/u01/app/odaorabase0/oracle/dpdump/ttsps_dir'; Directory created.
- TBS01表領域を宛先データベースASMTDEにインポートします。ソース・データベースの
expdp
ダンプ・ファイルをデータベース・ディレクトリttsps_dir
にコピーします。impdp
はダンプ・ファイルを使用して、表領域メタデータを宛先データベースに追加します。TRANSPORT_DATAFILESは、宛先データベース内のデータ・ファイルの場所を参照します。### ### Run impdb as SYSTEM user, password for SYSTEM need to be entered when prompted ### $ impdp system TRANSPORT_DATAFILES=\'/u02/app/oracle/oradata/dbtde/DBTDE/datafile/o1_mf_tbs01_lnlgn65j_.dbf\' DIRECTORY=ttsps_dir dumpfile=expttps.dmp Import: Release 19.0.0.0.0 - Production on Mon Nov 6 12:53:37 2023 Version 19.25.0.0.0 Copyright (c) 1982, 2019, Oracle and/or its affiliates. All rights reserved. Password: Connected to: Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production Master table "SYSTEM"."SYS_IMPORT_TRANSPORTABLE_01" successfully loaded/unloaded Starting "SYSTEM"."SYS_IMPORT_TRANSPORTABLE_01": system/******** TRANSPORT_DATAFILES='/u02/app/oracle/oradata/dbtde/DBTDE/datafile/o1_mf_tbs01_lnlgn65j_.dbf' DIRECTORY=ttsps_dir dumpfile=expttps.dmp Processing object type TRANSPORTABLE_EXPORT/PLUGTS_BLK Processing object type TRANSPORTABLE_EXPORT/TABLE Processing object type TRANSPORTABLE_EXPORT/STATISTICS/TABLE_STATISTICS Processing object type TRANSPORTABLE_EXPORT/POST_INSTANCE/PLUGTS_BLK Job "SYSTEM"."SYS_IMPORT_TRANSPORTABLE_01" successfully completed
- 宛先のOracle Key Vault対応データベースで暗号化を有効にし、テストします。
### ### login as oracle user ### Connect to database using SQLPLUS as sysdba user ( sqlplus / as sysdba ) and run the following ### SQL> select TABLESPACE_NAME, STATUS , ENCRYPTED from dba_tablespaces ; TABLESPACE_NAME STATUS ENC ------------------------------ --------- --- SYSTEM ONLINE NO SYSAUX ONLINE NO UNDOTBS1 ONLINE NO TEMP ONLINE NO USERS ONLINE YES TBS01 READ ONLY NO 6 rows selected. SQL> alter tablespace TBS01 read write ; Tablespace altered. ### encrypt TBS01. In case encrypt operation is interrupted , run 'alter tablespace TBS01 encryption online finish encrypt ;' SQL> alter tablespace TBS01 encryption online encrypt ; Tablespace altered. SQL> select TABLESPACE_NAME, STATUS , ENCRYPTED from dba_tablespaces ; TABLESPACE_NAME STATUS ENC ------------------------------ --------- --- SYSTEM ONLINE NO SYSAUX ONLINE NO UNDOTBS1 ONLINE NO TEMP ONLINE NO USERS ONLINE YES TBS01 ONLINE YES 6 rows selected. ### ### Retrieve the data from TAB1 ### SQL> select OWNER, table_name from tab1 where rownum < 3 OWNER -------------------------------------------------------------------------------- TABLE_NAME -------------------------------------------------------------------------------- SYS TS$ SYS ICOL$ ### ### When the wallet is closed or unavailable, same SQL does not retrieve data ### To simulate wallet absence rename the cwallet.sso wallet under <wallet_root>/tde to some other name like cwallet.sso.orig ### and close the wallet. To return auto-login wallet , rename file back to cwallet.sso and run the SQL again. ### SQL> show parameter wallet_root NAME TYPE VALUE ------------------------------------ ----------- wallet_root string /etc/OKV/asmtde
Oracle Database Applianceでの非TDE Oracle ACFSデータベースからOracle ACFS CDBデータベースへの表領域の移行
Oracle Database Applianceで非TDE Oracle ACFSデータベースからOracle Key Vaultが有効になっているOracle ACFS CDBデータベースに表領域を移行する方法を説明します。
ステップ1: ソース・データベースからの表領域のエクスポート
- ソース・データベースに、宛先データベースに移行する表領域TBS01があることを確認します。その表領域に関する情報を見つけます。
### ### login as Oracle user ### Connect to database using SQLPLUS as sysdba user ( sqlplus / as sysdba ) and run the following ### SQL> select TABLESPACE_NAME, ENCRYPTED from dba_tablespaces ; TABLESPACE_NAME STATUS ENC ------------------------------ --------- --- SYSTEM ONLINE NO SYSAUX ONLINE NO UNDOTBS1 ONLINE NO TEMP ONLINE NO USERS ONLINE NO TBS01 ONLINE NO SQL> select FILE_NAME from dba_data_files where TABLESPACE_NAME='TBS01' ; FILE_NAME -------------------------------------------------------------------------------- /u02/app/oracle/oradata/dbnotde/DBNOTDE/datafile/o1_mf_tbs01_lnlgn65j_.dbf SQL> ### ### Checks if a set of tablespaces (to be transported) is self-contained ### SQL> EXECUTE DBMS_TTS.TRANSPORT_SET_CHECK('tbs01',true) ; PL/SQL procedure successfully completed.
- エクスポートに使用するデータベース・ディレクトリをソース・データベースDBNOTDEに作成します。
expdp
で使用するデータベース・ディレクトリ・オブジェクトを宛先データベースに作成します。### ### login as oracle user ### $ mkdir -pv /u01/app/odaorabase0/oracle/dpdump/ttsps_dir mkdir: created directory ‘/u01/app/odaorabase0/oracle/dpdump/ttsps_dir’ ### ### Connect to database using SQLPLUS as sysdba user ( sqlplus / as sysdba ) and run the following ### SQL> CREATE DIRECTORY ttsps_dir AS '/u01/app/odaorabase0/oracle/dpdump/ttsps_dir'; Directory created. SQL>
- ソース・データベースDBNOTDEからTBS01表領域をエクスポートします。まず、コピーする表領域をREAD ONLYモードに設定します。次に、指定した表領域に対して
expdp
を実行します。データベース・ディレクトリttsps_dir
に格納されているexpdp
のログ・ファイルを確認します。### ### login as oracle user ### Connect to database using SQLPLUS as sysdba user ( sqlplus / as sysdba ) and run the following ### SQL> ALTER TABLESPACE TBS01 READ ONLY; Tablespace altered. ### ### Run expdb as SYSTEM user, password for SYSTEM need to be entered when prompted ### $ expdp system TRANSPORT_TABLESPACES=TBS01 TRANSPORT_FULL_CHECK=YES DIRECTORY=ttsps_dir DUMPFILE=expttps.dmp Export: Release 19.0.0.0.0 - Production on Mon Nov 6 12:47:00 2023 Version 19.25.0.0.0 Copyright (c) 1982, 2019, Oracle and/or its affiliates. All rights reserved. Password: Connected to: Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production Starting "SYSTEM"."SYS_EXPORT_TRANSPORTABLE_01": system/******** TRANSPORT_TABLESPACES=TBS01 TRANSPORT_FULL_CHECK=YES DIRECTORY=ttsps_dir DUMPFILE=expttps.dmp Processing object type TRANSPORTABLE_EXPORT/STATISTICS/TABLE_STATISTICS Processing object type TRANSPORTABLE_EXPORT/PLUGTS_BLK Processing object type TRANSPORTABLE_EXPORT/POST_INSTANCE/PLUGTS_BLK Processing object type TRANSPORTABLE_EXPORT/TABLE Master table "SYSTEM"."SYS_EXPORT_TRANSPORTABLE_01" successfully loaded/unloaded ****************************************************************************** Dump file set for SYSTEM.SYS_EXPORT_TRANSPORTABLE_01 is: /u01/app/odaorabase0/oracle/dpdump/ttsps_dir/expttps.dmp ****************************************************************************** Datafiles required for transportable tablespace TBS01: /u02/app/oracle/oradata/dbnotde/DBNOTDE/datafile/o1_mf_tbs01_lnlgn65j_.dbf Job "SYSTEM"."SYS_EXPORT_TRANSPORTABLE_01" successfully completed at Mon Nov 6 12:47:19 2023 elapsed 0 00:00:14
- データ・ファイルを宛先データベース・サーバーに移動し、ソース・データベースDBNOTDEのデータ・ファイルのステータスを
READ WRITE
に編集します。データ・ファイルをPDB2データ・ファイルの場所にあるTDE対応データベース・サーバーに移動します。### ### login as oracle user ### $ cp /u02/app/oracle/oradata/dbnotde/DBNOTDE/datafile/o1_mf_tbs01_lnlgn65j_.dbf /u02/app/oracle/oradata/cdbtde/CDBTDE/092546916A493FE5E063E730850AF5BE/datafile/ ### ### In source database, set the tablespace back to read write mode ### Connect to database using SQLPLUS as sysdba user ( sqlplus / as sysdba ) and run the following ### SQL> ALTER TABLESPACE TBS01 READ WRITE;
ステップ2: TDE対応データベースへの表領域のインポート
- Oracle Key Vaultを使用したTDE対応データベースCDBTDEを宛先データベースとして作成します。
expdp
およびimpdp
を使用して、ソース・データベースのデータ・ファイルおよび表領域をこのデータベースにコピーします。ブラウザ・ユーザー・インタフェース(BUI)またはODACLIコマンドを使用して、Oracle Database Applianceにデータベースを作成します。たとえば:# odacli create-database -n okvdb2 -t -kt okv -osc adminobj1 -dh e2a65596-6435-4410-9e8d-6b21a6005779 -r ACFS --cdb -d pdbadmin -p pdb2 # odacli describe-database -n cdbtde Database details ---------------------------------------------------------------- ID: c1ba7c6a-2808-4a20-bf23-e35cb62c3fd0 Description: cdbtde DB Name: cdbtde DB Type: SI CDB: true PDB Name: PDB2 PDB Admin User Name: pdbadmin Storage: ACFS Home ID: e2a65596-6435-4410-9e8d-6b21a6005779 TDE Wallet Management: ODA TDE Enabled: true KeystoreType : OKV ### ### login as oracle user ### Connect to database using SQLPLUS as sysdba user ( sqlplus / as sysdba ) and run the following ### Take a note of PDB2 GUID which helps to determine the path of PDB2 datafiles ### SQL> col PDB_NAME for a20 SQL> select PDB_NAME,GUID from dba_pdbs ; PDB_NAME GUID -------------------- -------------------------------- PDB2 092546916A493FE5E063E730850AF5BE PDB$SEED 15998A6665985353E063BE6B1F0A494A
- PDB2のtnsnamesサービスを作成します。
### ### Edit the file $ORACLE_HOME/network/admin/tnsnames.ora with the following content ### $ srvctl add service -db cdbtde -service cdbtde_pdb2 -pdb pdb2 -role PRIMARY -policy AUTOMATIC $ srvctl start service -db cdbtde -service cdbtde_pdb2 CDBTDE_PDB2 = (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = <server-name>)(PORT = 1521)) (CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME = cdbtde_pdb2.test)
- インポート用に、ディレクトリをPDB2に作成します。
### ### login as oracle user ### $ mkdir -pv /u01/app/odaorabase0/oracle/dpdump/ttsps_dir mkdir: created directory ‘/u01/app/odaorabase0/oracle/dpdump/ttsps_dir’ ### ### Connect to database using SQLPLUS as sysdba user ( sqlplus / as sysdba ) and run the following ### SQL> ALTER SESSION SET CONTAINER=PDB2 ; SQL> CREATE DIRECTORY ttsps_dir AS '/u01/app/odaorabase0/oracle/dpdump/ttsps_dir'; Directory created. SQL>
- TBS01表領域をCDBTDEの宛先データベースPDB2コンテナにインポートします。ソース・データベースの
expdp
ダンプ・ファイルをデータベース・ディレクトリttsps_dir
にコピーします。impdp
はダンプ・ファイルを使用して、表領域メタデータを宛先データベースに追加します。TRANSPORT_DATAFILESは、宛先データベース内のデータ・ファイルの場所を参照します。### ### Run impdb as SYSTEM user, password for SYSTEM need to be entered when prompted ### $ impdp system@pdb2 TRANSPORT_DATAFILES=\'/u02/app/oracle/oradata/cdbtde/CDBTDE/092546916A493FE5E063E730850AF5BE/datafile/o1_mf_tbs01_lnlgn65j_.dbf\' DIRECTORY=ttsps_dir dumpfile=exp1.dmp Import: Release 19.0.0.0.0 - Production on Thu Nov 9 21:42:25 2023 Version 19.25.0.0.0 Copyright (c) 1982, 2019, Oracle and/or its affiliates. All rights reserved. Password: Connected to: Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production Master table "SYSTEM"."SYS_IMPORT_TRANSPORTABLE_01" successfully loaded/unloaded Starting "SYSTEM"."SYS_IMPORT_TRANSPORTABLE_01": system/********@pdb2 TRANSPORT_DATAFILES='/u02/app/oracle/oradata/cdbtde/CDBTDE/092546916A493FE5E063E730850AF5BE/datafile/o1_mf_tbs01_lnlgn65j_.dbf' DIRECTORY=ttsps_dir dumpfile=exp1.dmp Processing object type TRANSPORTABLE_EXPORT/PLUGTS_BLK Processing object type TRANSPORTABLE_EXPORT/TABLE Processing object type TRANSPORTABLE_EXPORT/STATISTICS/TABLE_STATISTICS Processing object type TRANSPORTABLE_EXPORT/STATISTICS/MARKER Processing object type TRANSPORTABLE_EXPORT/POST_INSTANCE/PLUGTS_BLK Job "SYSTEM"."SYS_IMPORT_TRANSPORTABLE_01" successfully completed at Thu Nov 9 21:42:52 2023 elapsed 0 00:00:19
- 宛先のOracle Key Vault対応データベースPDB1で暗号化を有効にし、テストします。
### ### login as oracle user ### Connect to database using SQLPLUS as sysdba user ( sqlplus / as sysdba ) and run the following ### SQL> alter session set container=pdb2 ; Session altered. SQL> select TABLESPACE_NAME, STATUS , ENCRYPTED from dba_tablespaces ; TABLESPACE_NAME STATUS ENC ------------------------------ --------- --- SYSTEM ONLINE NO SYSAUX ONLINE NO UNDOTBS1 ONLINE NO TEMP ONLINE NO USERS ONLINE NO TBS01 READ ONLY NO SQL> alter tablespace TBS01 read write ; Tablespace altered. ### encrypt TBS01. In case encrypt operation is interrupted , run 'alter tablespace TBS01 encryption online finish encrypt ;' SQL> alter tablespace TBS01 encryption online encrypt ; Tablespace altered. SQL> select TABLESPACE_NAME, STATUS , ENCRYPTED from dba_tablespaces ; TABLESPACE_NAME STATUS ENC ------------------------------ --------- --- SYSTEM ONLINE NO SYSAUX ONLINE NO UNDOTBS1 ONLINE NO TEMP ONLINE NO USERS ONLINE NO TBS01 ONLINE YES SQL> select FILE_NAME from dba_data_files where TABLESPACE_NAME='TBS01' ; FILE_NAME -------------------------------------------------------------------------------- /u02/app/oracle/oradata/cdbtde/CDBTDE/092546916A493FE5E063E730850AF5BE/datafile/ o1_mf_tbs01_lnx8h50f_.dbf ### ### Retrieve the data from TAB1 ### SQL> select OWNER, table_name from tab1 where rownum < 3 OWNER -------------------------------------------------------------------------------- TABLE_NAME -------------------------------------------------------------------------------- SYS TS$ SYS ICOL$ ### ### When the wallet is closed or unavailable, same SQL does not retrieve data ### To simulate wallet absence rename the cwallet.sso wallet under <wallet_root>/tde to some other name like cwallet.sso.orig ### and close the wallet. To return auto-login wallet , rename file back to cwallet.sso and run the SQL again. ### SQL> show parameter wallet_root NAME TYPE VALUE ------------------------------------ ----------- wallet_root string /etc/OKV/cdbtde
Oracle Database Applianceでの非TDE Oracle ASMデータベースからOracle ASM CDBデータベースへの表領域の移行
Oracle Database Applianceで非TDE Oracle ASMデータベースからOracle Key Vaultが有効になっているOracle ASM CDBデータベースに表領域を移行する方法を説明します。
ステップ1: ソース・データベースからの表領域のエクスポート
- ソース・データベースに、宛先データベースに移行する表領域TBS01があることを確認します。その表領域に関する情報を見つけます。
SQL> SQL> select TABLESPACE_NAME, ENCRYPTED from dba_tablespaces ; TABLESPACE_NAME STATUS ENC ----------------- --------- --- SYSTEM ONLINE NO SYSAUX ONLINE NO UNDOTBS1 ONLINE NO TEMP ONLINE NO USERS ONLINE NO TBS01 ONLINE NO SQL> select FILE_NAME from dba_data_files where TABLESPACE_NAME='TBS01' ; FILE_NAME -------------------------------------------------------------------------------- +DATA/ASMNOTDE/DATAFILE/tbs01.374.1152267015 ### ### Checks if a set of tablespaces (to be transported) is self-contained ### SQL> EXECUTE DBMS_TTS.TRANSPORT_SET_CHECK('tbs01',true) ; PL/SQL procedure successfully completed.
- エクスポートに使用するデータベース・ディレクトリをソース・データベースASMNOTDEに作成します。
expdp
の宛先データベースにデータベース・ディレクトリ・オブジェクトを作成します。### ### login as oracle user ### $ mkdir -pv /u01/app/odaorabase0/oracle/dpdump/ttsps_dir mkdir: created directory ‘/u01/app/odaorabase0/oracle/dpdump/ttsps_dir’ ### ### Connect to database using SQLPLUS as sysdba user ( sqlplus / as sysdba ) and run the following ### SQL> CREATE DIRECTORY ttsps_dir AS '/u01/app/odaorabase0/oracle/dpdump/ttsps_dir'; Directory created.
- ソース・データベースASMNOTDEからTBS01表領域をエクスポートします。まず、コピーする表領域をREAD ONLYモードに設定します。次に、指定した表領域に対して
expdp
を実行します。データベース・ディレクトリttsps_dir
に格納されているexpdp
のダンプ・ファイルを確認します。### ### Set the tablespaces that you need to be exported in read-only mode ### login as Oracle user ### Connect to database using SQLPLUS as sysdba user ( sqlplus / as sysdba ) and run the following SQL> ALTER TABLESPACE TBS01 READ ONLY; Tablespace altered. SQL> ### ### Run expdb as SYSTEM user, password for SYSTEM need to be entered when prompted ### $ expdp system TRANSPORT_TABLESPACES=TBS01 TRANSPORT_FULL_CHECK=YES DIRECTORY=ttsps_dir DUMPFILE=expttpsasm.dmp Export: Release 19.0.0.0.0 - Production on Tue Nov 7 10:12:19 2023 Version 19.25.0.0.0 Copyright (c) 1982, 2019, Oracle and/or its affiliates. All rights reserved. Password: Connected to: Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production Starting "SYSTEM"."SYS_EXPORT_TRANSPORTABLE_01": system/******** TRANSPORT_TABLESPACES=TBS01 TRANSPORT_FULL_CHECK=YES DIRECTORY=ttsps_dir DUMPFILE=expttpsasm.dmp Processing object type TRANSPORTABLE_EXPORT/STATISTICS/TABLE_STATISTICS Processing object type TRANSPORTABLE_EXPORT/PLUGTS_BLK Processing object type TRANSPORTABLE_EXPORT/POST_INSTANCE/PLUGTS_BLK Processing object type TRANSPORTABLE_EXPORT/TABLE Master table "SYSTEM"."SYS_EXPORT_TRANSPORTABLE_01" successfully loaded/unloaded ****************************************************************************** Dump file set for SYSTEM.SYS_EXPORT_TRANSPORTABLE_01 is: /u01/app/odaorabase0/oracle/dpdump/ttsps_dir/expttpsasm.dmp ****************************************************************************** Datafiles required for transportable tablespace TBS01: +DATA/ASMNOTDE/DATAFILE/tbs01.374.1152267015 Job "SYSTEM"."SYS_EXPORT_TRANSPORTABLE_01" successfully completed at Tue Nov 7 10:12:49 2023 elapsed 0 00:00:20
- データ・ファイルを宛先データベース・サーバーに移動し、ソース・データベースASMNOTDEのデータ・ファイルのステータスを
READ WRITE
に編集します。### ### login to grid user ### Copying datafiles from ASM to filesystem ### $ asmcmd cp +DATA/ASMNOTDE/DATAFILE/tbs01.374.1152267015 /home/grid/tbs01.dbf copying +DATA/ASMNOTDE/DATAFILE/tbs01.374.1152267015 -> /home/grid/tbs01.dbf ### ### In source database, set the tablespace back to read write mode ### login as Oracle user ### Connect to database using SQLPLUS as sysdba user ( sqlplus / as sysdba ) and run the following ### SQL> ALTER TABLESPACE TBS01 READ WRITE;
ステップ2: TDE対応データベースへの表領域のインポート
- Oracle Key Vaultを使用したTDE対応データベースASMTDEを宛先データベースとして作成します。
expdp
およびimpdp
を使用して、ソース・データベースのデータ・ファイルおよび表領域をこのデータベースにコピーします。ブラウザ・ユーザー・インタフェース(BUI)またはODACLIコマンドを使用して、Oracle Database Applianceにデータベースを作成します。たとえば:# odacli create-database -n asmtde -t -kt okv -osc adminobj1 -dh e2a65596-6435-4410-9e8d-6b21a6005779 -r ASM --cdb -d pdbadmin -p pdb1 # odacli describe-database -n asmtde Database details ---------------------------------------------------------------- ID: 5dfa97d9-d774-4a4a-93a2-d21a36faf283 Description: asmtde DB Name: asmtde DB Type: SI CDB: true PDB Name: PDB1 PDB Admin User Name: pdbadmin Storage: ASM Home ID: e2a65596-6435-4410-9e8d-6b21a6005779 TDE Wallet Management: ODA TDE Enabled: true KeystoreType : OKV ### ### login as oracle user ### Connect to database using SQLPLUS as sysdba user ( sqlplus / as sysdba ) and run the following ### SQL> col PDB_NAME for a20 SQL> select PDB_NAME,GUID from dba_pdbs ; PDB_NAME GUID -------------------- -------------------------------- PDB1 1599A96E256A8B99E063BE6B1F0AC02B PDB$SEED 15998A6665985353E063BE6B1F0A494A
- ファイル・システムからASMTDEの宛先Oracle ASMの場所にデータ・ファイルをコピーします。ファイルをコピーした後、関連する権限を必ず設定します。
### ### login to grid user ### $ asmcmd cp /home/grid/tbs01.dbf +DATA/ASMTDE/1599A96E256A8B99E063BE6B1F0AC02B/DATAFILE/tbs01 --dest_dbname ASMTDE copying /home/grid/tbs01.dbf -> +DATA/ASMTDE/1599A96E256A8B99E063BE6B1F0AC02B/DATAFILE/tbs01 $ asmcmd ASMCMD> pwd +DATA/ASMTDE/1599A96E256A8B99E063BE6B1F0AC02B/DATAFILE ASMCMD> ls --permission User Group Permission Name dbusr1@00eea686ffb0ff1bbf28c0b8362cccf6 rw------- SYSAUX.332.1165769683 dbusr1@00eea686ffb0ff1bbf28c0b8362cccf6 rw------- SYSTEM.333.1165769683 dbusr1@00eea686ffb0ff1bbf28c0b8362cccf6 rw------- UNDOTBS1.331.1165769683 dbusr1@00eea686ffb0ff1bbf28c0b8362cccf6 rw------- USERS.335.1165769685 grid@00eea686ffb0ff1bbf28c0b8362cccf6 rw------- tbs01 => +DATA/ASMTDE/DATAFILE/tbs01.338.1165770781 ASMCMD> chown dbusr1@00eea686ffb0ff1bbf28c0b8362cccf6 tbs01 ASMCMD> ASMCMD> ls --permission User Group Permission Name dbusr1@00eea686ffb0ff1bbf28c0b8362cccf6 rw------- SYSAUX.332.1165769683 dbusr1@00eea686ffb0ff1bbf28c0b8362cccf6 rw------- SYSTEM.333.1165769683 dbusr1@00eea686ffb0ff1bbf28c0b8362cccf6 rw------- UNDOTBS1.331.1165769683 dbusr1@00eea686ffb0ff1bbf28c0b8362cccf6 rw------- USERS.335.1165769685 dbusr1@00eea686ffb0ff1bbf28c0b8362cccf6 rw------- tbs01 => +DATA/ASMTDE/DATAFILE/tbs01.338.1165770781
- PDB1のtnsnamesサービスを作成します。
### ### Edit the file $ORACLE_HOME/network/admin/tnsnames.ora with the following content ### $ srvctl add service -db asmtde -service asmtde_pdb1 -pdb pdb1 -role PRIMARY -policy AUTOMATIC $ srvctl start service -db asmtde -service asmtde_pdb1 ASMTDE_PDB1 = (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = <server-name>)(PORT = 1521)) (CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME = asmtde_pdb1.test)
- インポート用に、ディレクトリをPDB1に作成します。
### ### login as oracle user ### $ mkdir -pv /u01/app/odaorabase0/oracle/dpdump/ttsps_dir mkdir: created directory ‘/u01/app/odaorabase0/oracle/dpdump/ttsps_dir’ ### ### Connect to database using SQLPLUS as sysdba user ( sqlplus / as sysdba ) and run the following ### SQL> ALTER SESSION SET CONTAINER=PDB1 ; SQL> CREATE DIRECTORY ttsps_dir AS '/u01/app/odaorabase0/oracle/dpdump/ttsps_dir'; Directory created. SQL>
- 表領域をPDB1にインポートします。ソース・データベースの
expdp
ダンプ・ファイルをデータベース・ディレクトリttsps_dir
にコピーします。impdp
はダンプ・ファイルを使用して、表領域メタデータを宛先データベースに追加します。TRANSPORT_DATAFILESは、宛先データベース内のデータ・ファイルの場所を参照します。### ### Run impdb as SYSTEM user, password for SYSTEM need to be entered when prompted ### $ impdp system@asmtde_pdb1 TRANSPORT_DATAFILES=\'+DATA/ASMTDE/1599A96E256A8B99E063BE6B1F0AC02B/DATAFILE/tbs01\' DIRECTORY=ttsps_dir dumpfile=expttpsasm.dmp Import: Release 19.0.0.0.0 - Production on Mon Apr 8 17:52:09 2024 Version 19.23.0.0.0 Copyright (c) 1982, 2019, Oracle and/or its affiliates. All rights reserved. Password: Connected to: Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production Master table "SYSTEM"."SYS_IMPORT_TRANSPORTABLE_01" successfully loaded/unloaded Starting "SYSTEM"."SYS_IMPORT_TRANSPORTABLE_01": system/********@pdb1 TRANSPORT_DATAFILES='+DATA/ASMTDE/1599A96E256A8B99E063BE6B1F0AC02B/DATAFILE/tbs01' DIRECTORY=ttsps_dir dumpfile=expttpsasm.dmp Processing object type TRANSPORTABLE_EXPORT/PLUGTS_BLK Processing object type TRANSPORTABLE_EXPORT/TABLE Processing object type TRANSPORTABLE_EXPORT/STATISTICS/TABLE_STATISTICS Processing object type TRANSPORTABLE_EXPORT/POST_INSTANCE/PLUGTS_BLK Job "SYSTEM"."SYS_IMPORT_TRANSPORTABLE_01" successfully completed at Mon Apr 8 17:52:18 2024 elapsed 0 00:00:03
- 宛先のOracle Key Vault対応データベースPDB1で暗号化を有効にし、テストします。
### ### login as oracle user ### Connect to database using SQLPLUS as sysdba user ( sqlplus / as sysdba ) and run the following ### SQL> alter session set container=pdb1 ; Session altered. SQL> select TABLESPACE_NAME, STATUS , ENCRYPTED from dba_tablespaces ; TABLESPACE_NAME STATUS ENC ------------------------------ --------- --- SYSTEM ONLINE NO SYSAUX ONLINE NO UNDOTBS1 ONLINE NO TEMP ONLINE NO USERS ONLINE NO TBS01 READ ONLY NO 6 rows selected. SQL> alter tablespace TBS01 read write ; Tablespace altered. ### encrypt TBS01. In case encrypt operation is interrupted , run 'alter tablespace TBS01 encryption online finish encrypt ;' SQL> alter tablespace TBS01 encryption online encrypt ; Tablespace altered. SQL> select TABLESPACE_NAME, STATUS , ENCRYPTED from dba_tablespaces ; TABLESPACE_NAME STATUS ENC ------------------------------ --------- --- SYSTEM ONLINE NO SYSAUX ONLINE NO UNDOTBS1 ONLINE NO TEMP ONLINE NO USERS ONLINE NO TBS01 ONLINE YES 6 rows selected. ### ### Retrieve the data from TAB1 ### SQL> select OWNER, table_name from tab1 where rownum < 3 2 ; OWNER -------------------------------------------------------------------------------- TABLE_NAME -------------------------------------------------------------------------------- SYS TS$ SYS ICOL$ ### ### When the wallet is closed or unavailable, same SQL does not retrieve data ### To simulate wallet absence rename the cwallet.sso wallet under <wallet_root>/tde to some other name like cwallet.sso.orig ### and close the wallet. To return auto-login wallet , rename file back to cwallet.sso and run the SQL again. ### SQL> show parameter wallet_root NAME TYPE VALUE ------------------------------------ ----------- wallet_root string /etc/OKV/asmtde