作成日更新日影響を受けるバージョン修正バージョン

 


Management Console - 全バージョンN/A

問題事象

Management Console のアップグレード/アップデート実行時「パッケージのインストール」完了後に「次へ」をクリックした際にプロセスが失敗すると、その後たとえバックアップからManagement Consoleインストールディレクトリをリストアしてもアップグレード/アップデート再試行は同箇所で必ず失敗する。

原因

パッケージのインストール後に「次へ」をクリックすると、アップグレード/アップデートの一環として必要な新しいフィールド、値、その他の変更がデータベースに適用されます。変更のためにインストールプロセスはデータベースをロックしますが、ロック後にアップグレード/アップデートが失敗した場合、先行するロックにより後続の再試行も失敗します。これはinstall.logファイル (デフォルトの場所は「Program Files\Blancco\Blancco Management Console\logs」ですが環境によって異なります) 内の次のメッセージから確認できます:


Could not acquire change log lock. Currently locked by Computer\User since DD/MM/YY hh:mm


使用されているシステムとロック時に使用されていたユーザーアカウントが表示されます。

解決策

最初のアップグレード/アップデート実行前にデータベースのバックアップを取得している場合には、リストアによりロックはクリアされます。一方、バックアップが使用できない、またはバックアップ取得前に失敗してしまった場合には、データベースロックを手動で解除する必要があります。

以下の手順詳細をご参照ください。MS SQLデータベースおよびPostgreSQLデータベースの双方について説明しています。この手順が完了し、また最初に失敗した原因を解決すれば、Management Console のアップグレード/アップデートインストールを完了できます。



Microsoft SQLデータベース (SQL Server Management Studioを使用)

  1. SQL Server Management Studioにログインしデータベースフォルダを展開
  2. Blanccoレポートデータベースを展開 (使用されているデータベース名が不明な場合、main.propertiesファイルから確認できます。このファイルは次の場所にあります「Program Files\Blancco\Blancco Management Console\apache-tomcat\webapps\ROOT\WEB-INF\classes」。これはデフォルトの場所であり、システムによって異なる場合があります。main.propertiesファイル内に「database.url=」エントリーがあり、さらにその値に「database.name=」が含まれています。これがManagement Consoleに使用されているデータベースです)
  3.  「テーブル」フォルダーを展開しデータベーステーブルを表示
  4. dbo.DATABASECHANGELOGLOCKを選択し右クリックからオプションメニューを表示
  5. 「上位200行を編集」を選択しテーブルの内容を表示
  6. 「LOCKED」列が「True」かつ「LOCKGRANTED」列 (ロックがいつ有効になったかを示す) および「LOCKEDBY」列 (データベースをロックしたシステム/ユーザーを示す) に値が入力されている行を見つけ、ロックを解除するためにこれらの行を削除

PostgreSQLデータベース (pgAdminツールを使用)

  1. pgAdminを開き「サーバ」を展開しさらに適切なPostgreSQLインストール/インスタンスを展開
  2. 「データベース」を展開、さらにManagement Consoleが使用しているデータベースを展開 (使用されているデータベース名が不明な場合、main.propertiesファイルから確認できます。このファイルは次の場所にあります「Program Files\Blancco\Blancco Management Console\apache-tomcat\webapps\ROOT\WEB-INF\classes」。これはデフォルトの場所であり、システムによって異なる場合があります。main.propertiesファイル内に「database.url=」エントリーがあり、さらにその値に「database.name=」が含まれています。これがManagement Consoleに使用されているデータベースです)
  3. 「スキーマ」を展開→「public」および「テーブル」フォルダーを展開しデータベーステーブルを表示
  4. 「databasechangeloglock」を選択し右クリックからオプションメニューを表示
  5. 「データビュー」→ 「先頭100行の表示」を選択しテーブルの内容を表示
  6. 「locked」列が「true」かつ「lockgranted」列 (ロックがいつ有効になったかを示す) および「lockedby」列 (データベースをロックしたシステム/ユーザーを示す) に値が入力されている行を見つけ、ロックを解除するためにこれらの行を削除