データベースアップグレードツールの使用
Liferayデータベースアップグレードツールは、Liferay DXPデータベースおよびLiferay Portalデータベースをオフラインでアップグレードするためのクライアントプログラムです。
アップグレードする前に、必ずデータとインストールを バックアップ してください。 バックアップコピーでアップグレードプロセスをテストすることをお勧めします。
6.2以前からアップグレードする場合は、ファイルストアの構成を更新します。 詳細については、「 ファイル ストアの更新 」を参照してください。
アップグレード操作用にデータベースを調整、 不要なデータを削除 (Web コンテンツ、ドキュメントなどの不要なバージョンなど)してアップグレードのパフォーマンスを向上させ、Liferay インスタンスから切り離した状態でデータベースを変更することでアップグレードの問題を解決できます。 これらのアクティビティは、DXPをはじめとする大規模で重要なポータル環境を安全かつ迅速にアップグレードするために特に重要です。 データベースのチューニングとプルーニングを考慮し、「 Liferay のアップグレード」で説明されている関連タスクを完了したら、新しいインストールをセットアップし、アップグレード ツールを使用してデータベースをアップグレードする準備が整います。
新しい Liferay Docker イメージ にアップグレードしていて、アップグレードツールを使用したい場合は、新しい Liferay バージョンの Liferay Tomcat バンドル から使用してください。 このツールは、バンドルのtools/portal-tools-db-upgrade-clientフォルダにあります。
新しいLiferayリリースをアプリケーションサーバーにインストールした場合は、[Liferay Home]/tools/portal-tools-db-upgrade-clientフォルダを作成し、アップグレードツールをダウンロードして、ツールを新しいフォルダにインストールします。
| 編集 | ダウンロード手順 |
|---|---|
| Liferay DXP(サブスクリプション) | ダウンロード ページ に移動し、DXP バージョンと 製品/サービス パック ファイル タイプを選択します。 表示されるリストで、Liferay DXPアップグレードクライアント用の[ダウンロード]をクリックします。 |
| Liferay Portal | ダウンロード ページに移動します。 Liferay Portal ダウンロード メニューで、 その他のファイル を選択し、 ダウンロードをクリックします。 最新のLiferay PortalのリリースアセットのGitHubページが表示されます。 liferay-ce-portal-tools-[version].zipをクリックします。 |
新規インストール時の設定
-
新しい Liferay インストールの
[Liferay Home]/dataフォルダを、 バックアップの[Liferay Home]/dataフォルダに置き換えます。 -
DXP アクティベーション キー (サブスクリプション) と OSGi 構成ファイル を バックアップ から新しいインストールにコピーします。
-
7.2 にアップグレードする場合は、新しいインストールの
[Liferay Home]/files/osgi/configs/フォルダにある 設定ファイル を使用して、検索インデックスを無効にします。 例えば、cd liferay-homemkdir -p osgi/configsecho "indexReadOnly=\"true\"" >> osgi/configs/com.liferay.portal.search.configuration.IndexStatusManagerConfiguration.config注DXP/Portal 7.3以降は、検索インデックスが自動的に無効/再有効化されます。
-
Liferay Commerce を使用している場合は、アップグレードの準備をしてください。 詳細については、「 Liferay Commerce のアップグレード 」を参照してください。
-
Liferay データベースのアップグレードと一緒に Marketplace アプリのデータをアップグレードする場合は、新しい Liferay バージョンを対象とする各アプリの最新バージョンを ダウンロード し、それを
[Liferay Home]/deployフォルダにコピーします。 それ以外の場合は、データベースのアップグレード後にアプリをインストールし、「 アップグレード後の考慮事項」の説明に従ってデータをアップグレードできます。 -
変更された保存場所を持つ Advanced File System Store または Simple File System Store を使用している場合は、ファイルストアの設定を
.configファイル にエクスポートし、それを新しい[Liferay Home]/osgi/configs/フォルダにコピーします。重要Advanced File System Storeを使用している場合は、データベースをアップグレードする前に、新しいインストールで
.configファイルを使用して構成する必要があります。以下は、必要な
rootDirパラメータを含むcom.liferay.portal.store.file.system.configuration.AdvancedFileSystemStoreConfiguration.configファイルの例です。rootDir="data/document_library" -
データベースベンダーが推奨するJDBCドライバーを使用してください。 たとえば、MySQLを使用している場合は、
portal-ext.propertiesファイルでjdbc.default.driverClassName=com.mysql.cj.jdbc.Driverを設定し、アプリケーションサーバーが使用するMySQL JDBCドライバーのJARを置き換えます。 詳細については、 データベース ドライバー を参照してください。アップグレード ツールのプロンプトに回答するか、 アップグレード プロパティ ファイルを使用することによって、アップグレードを構成できます。
注新しい Liferay Docker イメージにアップグレードする場合、Docker env 変数ではなく ポータルプロパティ ファイルを使用してデータベース接続を指定するようにしてください。 ポータル プロパティ リファレンス には、各 Liferay Env 変数に対応するポータル プロパティがリストされています。
-
(オプション) アップグレード レポートを有効にするには、
tools/portal-tools-db-upgrade-client/portal-upgrade-ext.propertiesファイルでupgrade.report.enabled=trueを設定します。 -
(オプション) アップグレード ログ コンテキストを有効にするには、
/tools/portal-tools-db-upgrade-client/portal-upgrade-ext.propertiesファイルでupgrade.log.context.enabled=trueを設定します。
バッチインサートのプロパティ
portal-upgrade-database.propertiesファイルで、JDBC構成のバッチインサートプロパティを有効にすることができます。 これは、INSERTステートメントのバッチ処理により実行を高速化することにより、パフォーマンスを向上させるものです。 ベンダーのプロパティパラメータについては、以下の表を参照してください。 この機能は、DB2およびOracleデータベースでは使用できません。
| データベースプロバイダー | プロパティ |
|---|---|
| MariaDB | rewriteBatchedStatements=true |
| MySQL | rewriteBatchedStatements=true |
| PostgreSQL | reWriteBatchedInserts=true |
| SQL Server | useBulkCopyForBatchInsert=true |
バッチ挿入プロパティは、Liferay 7.4 U60+/GA60+ の portal-upgrade-database.properties ファイルに含まれています。
アップグレードツールの実行
Liferay 7.4 U82/GA82 より前では、 db_upgrade_client.sh ファイルの名前は db_upgrade.shでした。
アップグレード ツールは、コマンド ライン インターフェイス経由で、または プロパティ ファイルを使用して構成されます。
[Liferay Home]/tools/portal-tools-db-upgrade-client フォルダ内の db_upgrade_client.sh スクリプトは、アップグレード ツール (Windows ではdb_upgrade_client.bat ) を呼び出します。 --helpオプションは、ツールの使用状況を説明します。
./db_upgrade_client.sh --help
ここでは、アップグレードツールを使ってデータベースをアップグレードする方法を説明しています。
-
アップグレードツールを起動します。 次にコマンドの例を示します。
cd liferay-home/tools/portal-tools-db-upgrade-client./db_upgrade_client.sh -j "-Dfile.encoding=UTF-8 -Duser.timezone=GMT -Xmx4096m"上記のコマンドは、アプリケーションサーバーで推奨されているのと同じJVMオプションでアップグレードツールを実行します。 ファイルのエンコード(
UTF-8)、タイムゾーン(GMT)、国、言語、メモリの設定(-Xmx値)はすべて、アプリケーションサーバーの設定と一致している必要があります。 10 GB を超えるデータを持つデータベースの場合は、-Xmxオプションを使用して追加のメモリを割り当てます。アップグレード プロパティ ファイルを使用してアップグレードを構成していない場合、アップグレード ツールによっていくつかの構成値の入力が求められ、括弧内にデフォルト値が表示されます。 次に対話の例を示します。
Please enter your application server (tomcat): tomcat Please enter your application server directory (../../tomcat): Please enter your extra library directories (../../tomcat/bin): Please enter your global library directory (../../tomcat/lib): Please enter your portal directory (../../tomcat/webapps/ROOT): [ db2 mariadb mysql oracle postgresql sqlserver ] Please enter your database (mysql): mariadb Please enter your database host (localhost): (etc.)プロンプトに表示されるデフォルト値を使用する場合は、Enterキーを押します。
構成が完了すると、アップグレードが開始されます。 このツールは、各アップグレード処理の開始と完了のログを記録します。
重要アップグレード ツールでは、いくつかの構成のみが要求されます。 アプリケーションにとって重要となる可能性のある多くの項目は、 アップグレード プロパティ ファイル で設定する必要があります (例:
dl.store.implおよびmodule.framework.base.dir)。portal-ext.properties内のすべてのプロパティをportal-upgrade-ext.propertiesにコピーするのがベストプラクティスです。 -
アップグレードが完了したら、 アップグレード レポート で、データベース アップグレードの失敗、エラー、または警告がないか確認します。 Gogo Shell コマンド を使用して、問題のトラブルシューティングを行い、アップグレードを完了できます。
データベースのアップグレードが完了し、問題が解決されました。
アップグレードされたデータベースのテスト
データベースのアップグレードが完了したので、テストしてみましょう。
-
新しいLiferay Dockerイメージにアップグレードしている場合は、イメージをアップグレードされたデータベースに指定し、Liferayをデータベースで検証します。 詳細については、 Liferay コンテナの設定 を参照してください。
-
アップグレード後の考慮事項を確認してください。
-
カスタム Liferay Home ファイル と アプリケーション サーバー ファイル をバックアップからコピーして新しいインストールにマージします。 ファイルには次のものが含まれる場合がありますが、これらに限定されません。
/license/*:アクティベーションキー。 (サブスクリプション)/log/*:ログファイル。/osgi/configs/*.config:OSGi設定ファイル。 カスタム構成ファイルのみをコピーします。 Liferay によって生成された*-default.configファイルは含めないでください。portal-*.properties:portal-ext.propertiesのようなポータルプロパティファイル。- アプリケーションサーバーファイル:変更されたスクリプトと設定ファイル。
web.xml:ポータルWebアプリケーション記述子。
-
サーバーを起動し、アップグレードしたデータベースでLiferayを検証します。

データベースアップグレードツールを使用してLiferayデータベースをアップグレードしました。
これが試験的なアップグレードであり、アップグレード時間を短縮したい場合は、アップグレード用にデータベースを調整し (まだ調整していない場合)、データベースから 不要なデータを削除 します。 必要に応じてこの記事の手順を繰り返してください。
問題が発生した場合は、 アップグレード レポート を確認し、 アップグレードのトラブルシューティングを参照してください。