[解決済み] AirWatch データベース内の冗長データが原因で 9.1.x 以降へのアップグレードに時間がかかる

現象

AirWatch 9.1.x 以降へのアップグレードを実行する際、dbo.certificate テーブルに格納された冗長データが原因で、9.1.x データベース インストーラの完了までに長い時間を要する場合があります。この問題はすべての環境で発生するわけではありません。アップグレードの計画に先立ち、次に示す確認作業を貴社の AirWatch データベースに対して実施することを推奨します。

 

アップグレード前の確認

上記の問題が貴社環境に影響するかどうかを確認するには、次のスクリプトを実行してください。


SET TRANSACTION ISOLATION LEVEL READ UNCOMMITTED;
            IF OBJECT_ID('tempdb..#AuthCerts', 'U') IS NOT NULL
            DROP TABLE #AuthCerts;
                       
            CREATE TABLE #AuthCerts ( CertificateID BIGINT,
                                                                                                SubjectName NVARCHAR(500) COLLATE DATABASE_DEFAULT )
            CREATE NONCLUSTERED INDEX nix_SubjectName_AuthCerts ON #AuthCerts (SubjectName)
 
            INSERT INTO #AuthCerts
                         
            SELECT  c.CertificateID
                        , c.SubjectName
            FROM mobilemanagement.AuthenticationToken at
            INNER JOIN dbo.Certificate C
                        ON at.CertificateID = C.CertificateID
            WHERE at.AuthenticationType = 4  --Cert based auth


    IF OBJECT_ID('tempdb..#Certs', 'U') IS NOT NULL
            DROP TABLE #Certs;
                       
            CREATE TABLE #Certs ( CertificateID BIGINT,
                                                                                    SubjectName NVARCHAR(500) COLLATE DATABASE_DEFAULT )
            CREATE NONCLUSTERED INDEX nix_SubjectName_Temp ON #Certs(SubjectName)
 
            INSERT INTO #Certs
 
            SELECT r.CertificateID,r.SubjectName
            FROM
                        (
                        SELECT  c.CertificateID
                                    , c.SubjectName
                                    , RowNumber = ROW_NUMBER () OVER(PARTITION BY da.CertificateID ORDER BY C.SubjectName)
                        FROM interrogator.DeviceApplicationCheckIn da
                        INNER JOIN dbo.Certificate C
                                    ON DA.CertificateID = C.CertificateID
                        WHERE da.bundleID IN( 'com.airwatch.androidagent','com.Airwatch.mac.agent')
                        )r
            WHERE r.RowNumber = 1   
           
            SELECT COUNT(r.CertificateID) AS DuplicateCertCount
            FROM(
                                    SELECT
                                                            c.CertificateID
                                    FROM #AuthCerts t
                                    INNER JOIN dbo.Certificate c
                                                ON t.SubjectName = c.SubjectName
                                    LEFT JOIN #AuthCerts t2
                                                ON c.CertificateID = t2.CertificateID   
                                    WHERE t2.CertificateID IS NULL
 
                                    UNION
 
                                    SELECT c.CertificateID
                                    FROM #Certs t
                                    INNER JOIN dbo.Certificate c
                                                ON t.SubjectName = c.SubjectName
                                    LEFT JOIN interrogator.DeviceApplicationCheckIn da
                                                ON c.CertificateID = da.CertificateID   
                                    WHERE c.CertificateID < t.CertificateID
                                    AND da.DeviceAppCheckInID IS NULL
                        )r

 

このスクリプトで 0 よりも大きい値が返された場合は、以下に示す手順に従ってください。

 

アップグレードに備えての準備

冗長な証明書レコードを除去するスクリプトは、Resource ポータルのこちらで入手できます。 

冗長なレコードの数が多いと、このスクリプトの完了までに数時間を要することもあります。実際のアップグレードよりも前に、十分な余裕を持って (可能であれば 1 週間前に)、このスクリプトを実行することを推奨します。スクリプトは、オフピークの時間帯か、AirWatch サービスを停止した状態で実行してください。

 

お問い合わせ

サポート リクエストを発行するには、貴社の AirWatch サポート ラインに連絡するか、myAirWatch からサポート リクエストを提出してください。

 

敬具

AirWatch チーム

免責事項:これは英文の記事「[Resolved] Redundant data in the AirWatch Database leading to increased completion time during upgrades for 9.1.x and above」の日本語訳です。記事はベストエフォートで翻訳を進めているため、ローカライズ化コンテンツは最新情報ではない可能性があります。最新情報は英語版の記事で参照してください。

Have more questions? Submit a request

1 Comments

Please sign in to leave a comment.