ビジネスサポートポータルアカウントでログイン
Deep Security Manager 9.6 SP1 および Deep Security Manager 9.6 SP1 P1へのアップグレード前のデータベーススキーマの手動アップグレード方法  

Deep Security Manager 9.6 SP1 および Deep Security Manager 9.6 SP1 P1へのアップグレード前のデータベーススキーマの手動アップグレード方法

    • 更新日:
    • 17 Oct 2018
    • 製品/バージョン:
    • Trend Micro Deep Security 9.0
    • Trend Micro Deep Security 9.5
    • Trend Micro Deep Security 9.6
    • OS:
    • Windows すべて
概要
Deep Security Manager (以下、DSM) をアップグレードする前に実施する必要がある、データベーススキーマの手動アップグレード方法について教えてください。
詳細
Public

概要

データベーススキーマアップグレードには、
Q&A:DSMデータベーススキーマアップグレード方法でご案内させていただいている、
データベーススキーマアップグレードツールをご利用ください。
Q&A:DSMデータベーススキーマアップグレード方法のツールが使用できない場合に、
本Q&Aでご案内させていただいているSQLスクリプトをご利用ください。

注意事項

  • 本製品 Q&A に記載している手順は、SQL Server 2005 や Oracle データベースではサポートしていません。
  • 概要にも記載しているとおり、スキーマの手動アップグレードはデータベースに SQL Server を使用している環境で必要となります。Oracle データベース環境の場合は不要です (また、上記のとおりサポートもしていません)。
  • 複数 DSM ノード環境の場合、マイグレーション (スキーマアップグレード) 後の DSM のアップグレードはすべてのノードで実施する必要があります。
  • マルチテナント環境の場合、すべてのテナントにおいてマイグレーション (スキーマアップグレード) が完了してから、DSM のアップグレードを実施する必要があります。
  • マイグレーションをする前に必ずDBのバックアップを取得してください。
    また、SQLサーバのデータベース 復旧方法は事前にご確認ください。
  • 本Q&Aでご案内するスクリプトではDSM9.6SP1(Build9.6.3177)またはDSM9.6SP1P1(Build9.6.3400)
    対応したスキーマにアップグレードされます。

手順

スクリプトのダウンロード

手順で使用する SQL スクリプトをアップグレード後のDSMバージョンに合わせてダウンロードしてください。(zip ファイルの中に複数のファイルがあります)。

DSM9.6SP1(Build9.6.3177)

DSM9.6SP1P1(Build9.6.3400)

データベースの整合性チェックスクリプトの実行

  1. Microsoft SQL Server Management Studio を使用し、DSM のデータベースにアクセスします。
  2. DSM のデータベースを右クリックし、[新しいクエリ(Q)] を選択します。
  3. ダウンロードした zip ファイル内にある「DeepSecurityDatabaseBigintMigrationScriptTableRecoveryCommand.sql」をテキストエディタで開き、クエリフィールドにコピー & ペーストします。その際、上から三行目の「use [dsm]」の「dsm」を、利用している環境のデータベース名に変更します (データベース名が dsm の場合は変更不要です)。
  4. 「解析」ボタンをクリックします。コマンドが正常に完了することを確認します。
  5. クエリを実行します。zip ファイルに含まれる「DeepSecurityDatabaseBigintMigrationScriptTableRecoveryCommandSampleOutput.log」のような出力が記録されることを確認します。

事前準備

  1. DSM のデータベースのバックアップを採取します。
  2. zip ファイル内の「DeepSecurityDatabaseBigintMigrationScriptTableSpaceUsageSummary.sql」を使用し、アップグレードに必要なディスク容量の確認を行います (クエリの実行方法については、「データベースの整合性チェックスクリプトの実行」欄で解説しております)。以下のような出力が記録されます。

    Total Disk Usage for Migration Tables in KB : 103915072 KB
    Total Disk Usage for Migration Tables in MB : 101479 MB
    Total Disk Usage for Migration Tables in GB : 99 GB

    ヒント

    出力されたサイズの約 1.5 倍のディスク空き容量がデータベースサーバにあることを確認してください。上記例の場合、約 150 GB の空き容量が必要になります。

  3. SQL Server のプロパティの [接続] 画面より、「リモート クエリのタイムアウト」の値を 0 に設定します。
  4. (オプション) データベースのサイズが非常に大きい場合などは、アップグレード (マイグレーション) に掛かる時間短縮や必要なディスク容量を減らすため、特定のテーブルにおいて行をすべて削除 (TRUNCATE) します。
    1. zip ファイル内の「DeepSecurityDatabaseBigintMigrationScriptTableTruncation.sql」をテキストエディタで開きます。
    2. データベース名が dsm でない場合は、使用している環境のデータベース名に変更します。
    3. デフォルトでは、マイグレーション対象のテーブルをすべて TRUNCATE します。必要に応じて、533行目をコメントアウトし、TRUNCATE 対象のテーブルのコメントを外してください (以下部分)。

    533 : declare @altercolumnspec nvarchar(max) = 'systemevents.TargetID:bigint:null|antimalwareevents.AntiMalwareEventID:bigint|antimalwarequarantinedfile.AntiMalwareEventID:bigint|antimalwarespywareitems.AntiMalwareEventID:bigint:null|webreputationevents.WebReputationEventID:bigint|antimalwareeventhistory.AntiMalwareEventHistoryID:bigint|antimalwareeventhistory.AntiMalwareEventID:bigint:null|webreputationeventhistory.WebReputationEventHistoryID:bigint|webreputationeventhistory.WebReputationEventID:bigint:null|integrityevents.IntegrityEventID:bigint|integrityeventhistory.IntegrityEventHistoryID:bigint|integrityeventhistory.IntegrityEventID:bigint:null|loginspectionevents.LogInspectionEventID:bigint|loginspectioneventhistory.LogInspectionEventHistoryID:bigint|loginspectioneventhistory.LogInspectionEventID:bigint:null|packetlogs.PacketLogID:bigint|packetlogdatas.PacketLogDataID:bigint|payloadlogs.PayloadLogID:bigint|payloadlogdatas.PayloadLogDataID:bigint|packetloghistory.PacketLogHistoryID:bigint|packetloghistory.PacketLogID:bigint:null|payloadloghistory.PayloadLogHistoryID:bigint|payloadloghistory.PayloadLogID:bigint:null|entitys.EntityID:bigint|attribute2s.EntityID:bigint|supersededentitys.WasEntityID:bigint';

    534 : --declare @altercolumnspec nvarchar(max) = 'systemevents.TargetID:bigint:null';

    535 : --declare @altercolumnspec nvarchar(max) = 'antimalwareevents.AntiMalwareEventID:bigint|antimalwarequarantinedfile.AntiMalwareEventID:bigint|antimalwarespywareitems.AntiMalwareEventID:bigint:null|antimalwareeventhistory.AntiMalwareEventHistoryID:bigint|antimalwareeventhistory.AntiMalwareEventID:bigint:null';

    536 : --declare @altercolumnspec nvarchar(max) = 'webreputationevents.WebReputationEventID:bigint|webreputationeventhistory.WebReputationEventHistoryID:bigint|webreputationeventhistory.WebReputationEventID:bigint:null';

    537 : --declare @altercolumnspec nvarchar(max) = 'integrityevents.IntegrityEventID:bigint|integrityeventhistory.IntegrityEventHistoryID:bigint|integrityeventhistory.IntegrityEventID:bigint:null';

    538 : --declare @altercolumnspec nvarchar(max) = 'loginspectionevents.LogInspectionEventID:bigint|loginspectioneventhistory.LogInspectionEventHistoryID:bigint|loginspectioneventhistory.LogInspectionEventID:bigint:null';

    539 : --declare @altercolumnspec nvarchar(max) = 'packetlogs.PacketLogID:bigint|packetlogdatas.PacketLogDataID:bigint|packetloghistory.PacketLogHistoryID:bigint|packetloghistory.PacketLogID:bigint:null';

    540 : --declare @altercolumnspec nvarchar(max) = 'payloadlogs.PayloadLogID:bigint|payloadlogdatas.PayloadLogDataID:bigint|payloadloghistory.PayloadLogHistoryID:bigint|payloadloghistory.PayloadLogID:bigint:null';

    541 : --declare @altercolumnspec nvarchar(max) = 'entitys.EntityID:bigint|attribute2s.EntityID:bigint|supersededentitys.WasEntityID:bigint';

533行目~541行目における、変数「altercolumnspec」の定義と、それによって削除される情報の相関図は以下のとおりです。

変数の定義行削除される情報
533 (初期状態)以下の全て
534システムイベント
535不正プログラム対策イベント
536Webレピュテーションイベント
537変更監視イベント
538セキュリティログ監視イベント
539ファイアウォールイベント
540侵入防御イベント
541変更監視機能のベースライン情報

マイグレーション (スキーマアップグレード) の実施

  1. Deep Security Manager サービスを停止します。複数の DSM ノードがある場合は、すべてのノードで停止してください。
  2. Microsoft SQL Server Management Studio を使用し、DSM のデータベースにアクセスします。
  3. DSM のデータベースを右クリックし、[新しいクエリ(Q)] を選択します。
  4. ダウンロードした zip ファイル内にある「DeepSecurityDatabaseBigintMigrationScript.sql」をテキストエディタで開き、クエリフィールドにコピー & ペーストします。その際、上から三行目の「use [dsm]」の「dsm」を、利用している環境のデータベース名に変更します (データベース名が dsm の場合は変更不要です)。
  5. クエリを実行し、完了するまで待ちます。zip ファイルに含まれる「DeepSecurityDatabaseBigintMigrationScriptSampleOutput.log」のような出力が記録されることを確認します。なお、クエリの完了可否問わず、出力内容は保存してください。
  6. (オプション) マルチテナント環境の場合は、すべてのテナントにおける処理が完了するまで、再度手順 3.~5. を実施してください (スクリプト内のデータベース名はテナントにあわせて都度変更してください)。
  7. すべての処理が完了したら、DSM のアップグレードを実施します。

その他

DSM 9.5 SP 1 Patch 2 以降のインストーラでは、事前にデータベーススキーマの手動アップグレードが完了していないとアップグレードができないようになっています (以下画面が表示されます) が、9.5 SP 1 Patch 1 から Patch 2 へのアップグレード時などの該当しない環境や新規インストールの場合は本画面は表示されません。
※サイレントインストールでアップグレードを行う場合には、事前に必ずデータベーススキーマの手動アップグレードを実行してください。
Premium
Internal
評価:
カテゴリ:
インストール; バージョンアップ
Solution Id:
1112471
ご提案/ご意見
このソリューションはお役に立ちましたか?

フィードバックありがとうございました!

いただいたご提案/ご意見に関して、トレンドマイクロから詳細確認のため、Eメールを送付させていただく場合がありますので、Eメールアドレスを入力してください:
入力いただいたEメールアドレスはソリューション改善のためだけに使用いたします.

*こちらに技術的なご質問などをいただきましてもご返答する事ができません.

何卒ご了承いただきますようお願いいたします.


To help us improve the quality of this article, please leave your email here so we can clarify further your feedback, if neccessary:
We will not send you spam or share your email address.

*This form is automated system. General questions, technical, sales, and product-related issues submitted through this form will not be answered.


ユーザーガイド