さて、とある事情があり、Sisenseのバージョンアップが必要になった。
現在の開発環境のSisenseバージョンは7.4.3、最新は8.0.0。
メジャーバージョンアップなので、何かあると嫌だな。大切なファイルはバックアップ取っておきたい。
というわけで、今回はバックアップの話。
Sisenseのバックアップについては、以下のドキュメンテーションに記述がある。
Sisense DOCS - Backing Up Sisense
かいつまんで言うと、こういうことになる。
(1) ElastiCube Data
ErastiCubeデータが格納されているフォルダ
関連サービス: Sisense.ECMS
格納先: %ProgramData%\Sisense\PrismServer\ElastiCubeData
(2) Web Application
SisenseのWebアプリ関連データで、ユーザ、ダッシュボード、ウィジェットなどの関連データが格納されているフォルダ
関連サービス: Sisense.Repository and Sisense.Discovery
格納先: %ProgramData%\Sisense\PrismWeb\Repository\DB
%ProgramData%\Sisense\Infra\Discovery
(3) Plugin
関連サービス: なし
格納先: C:\Program Files\Sisense\app\plugins
特に時間がかかると思われるのはElastiCubeデータで、関連サービスを停止して、コピーすればOK。
上記で記述したとおりに処理すれば特に問題はないのだが、いちいち覚えてられないので、バッチファイルを作成してしまおう。
処理としては
①関連サービスの停止
②対象フォルダをバックアップ先のフォルダにコピー(今回はrobocopyを使った)
③関連サービスの開始
という手順で行えばいい。
バッチファイルはこんな感じ。
SisenseのProgramDataフォルダは C:\ProgramData\Sisense 、バックアップ先を C:\SisenseBackup として作成してみた。
@ECHO OFF net stop Sisense.ECMS
net stop Sisense.Repository
net stop Sisense.Discovery set src=C:\ProgramData\Sisense
set dst=C:\SisenseBackup mkdir %dst%
robocopy %src%\PrismServer\ElastiCubeData %dst%\PrismServer\ElastiCubeData /mir /r:1 /w:1
robocopy %src%\PrismWeb\Repository\DB %dst%\PrismWeb\ElastiCubeData /mir /r:1 /w:1
robocopy %src%\Infra\Discovery %dst%\Infra\Discovery /mir /r:1 /w:1
robocopy "C:\Program Files\Sisense\app\plugins" "%dst%\Program Files\Sisense\app\plugins" /mir /r:1 /w:1 net start Sisense.ECMS
net start Sisense.Repository
net start Sisense.Discovery
これを基にバッチファイルを作成し、実行してみた。
結果は問題なし!
Sisenseの最新版はここから入手できる。
ダウンロードしたSisense_Latest.exeをダブルクリックしてインストールを開始する。
立ち上がったこの画面で[Continue]をクリック
ここでは3つのチェック項目がある
・Release noteを読んだか
・Upgrade guideを読んだか
・バックアップを取ったか(上で取っている)
以上、問題なければ、チェックを入れ [Upgrade]をクリックして続行
以下の画面になったら完了
ダッシュボードを開いてみて、問題がないことを確認してみる.
バックアップの手順と自動化のためのバッチファイルを紹介した。
robocopyを使っているので、日次のデータバックでも使えると思う。
因みにHA(High Availablity)構成の場合はこれ以外にやることがあるので、以下を参照されたし。
https://documentation.sisense.com/latest/getting-started/backing_up_sisense.htm#gsc.tab=0
ではまた!