MySQLクライアントの使用
アプリケーションの問題のトラブルシューティングやカスタム開発を行うために、データベース内のデータを表示することが必要になる場合があります。 データベースにアクセスするには、組み込みのMySQLクライアントを使用して、データベースと直接やり取りする必要があります。 この機能は、Liferay Cloudの最新バージョンで利用可能で、いくつかの簡単な手順でアクセスすることができます。
MySQLクライアントを利用できるのは、AdminおよびContributor権限を持つLiferay Cloudユーザーのみです。
前提条件
Liferayサービスを通じてMySQLクライアントを使用する前に、サービスを少なくとも以下のサポートされているイメージバージョンにアップグレードする必要があります:
サービス | サポートされる最小イメージバージョン |
---|---|
データベース | liferaycloud/database:3.2.8 |
DXP (7.0を使用) | liferaycloud/liferay-dxp:7.0.10-ga1-fp90-3.0.19 |
DXP(7.1を使用) | liferaycloud/liferay-dxp-7.1.10-ga1-fp17-3.0.19 |
DXP(7.2を使用) | liferaycloud/liferay-dxp-7.2.10-sp1-fp4-3.0.19 |
データベースイメージを MySQL クライアントをサポートするバージョンにアップグレードすると、データベースの読み取り専用ユーザが初期化されます。 アップグレード前にこのユーザーのパスワードを設定しなかった場合、デフォルトのパスワードが使用され、後で変更することはできません。 詳しくは、 読み取り専用データベースのパスワード変更 を参照してください。
MySQLクライアントへのアクセス
Liferay Cloud のコンソールにログインします。
適切な環境に移動し、 [サービス] をクリックします:
[liferay サービス]をクリックします。
[Shell] タブをクリックします:
この画面のシェルに
mysql
と入力します。 これにより、MySQLクライアントにログインし、読み取り専用のクエリを実行できます。 たとえば、show tables;
を実行すると、すべてのテーブルを表示できます。
利用可能なすべてのコマンドについては、公式の MySQL Client documentation を参照してください。
読み取りおよび書き込み権限でのログイン
デフォルトのユーザーは、データベースに対して読み取りクエリのみを実行でき、データを操作することはできません。 これにより、偶発的な修正でサービスのデータが破損することを防ぐことができます。
しかし、データベース内のデータを操作できることが 重要 であれば、シェルにこのコマンドを入力することで( mysql
とだけ入力するのではなく)、データベースの認証情報を使ってログインすることができます。
mysql -u ${LCP_SECRET_DATABASE_USER} -p${LCP_SECRET_DATABASE_PASSWORD}
データベース名、ユーザー名、パスワードは、 データベース
サービスの 秘密 で確認することができます。
読み取り専用データベースのパスワードの変更
サポートされているバージョンのデータベース サービスをまだデプロイしていない場合は、データベース サービスの LCP_DATABASE_READONLY_USER_PASSWORD
環境変数の LCP.json
に独自のパスワードを設定することで、デフォルト ユーザーに独自のパスワードを設定することができます。
MySQL クライアントをサポートするバージョンを使用してデータベースサービスをデプロイしている場合、デフォルトユーザーはすでにデフォルトパスワードで初期化されています。 このパスワードは後で変更できないので、環境変数 LCP_DATABASE_READONLY_USER_PASSWORD
を追加できるのは、データベースサービスをデプロイする前(初めて、または上記より古いバージョンのイメージから更新する)のみです。 それ以外の場合は、デフォルトの生成されたパスワードを使用する必要があります。
次に、適切なDockerイメージバージョン(またはそれ以降)に更新し、サービスを再デプロイし、MySQLクライアントを使用できるようにします。
LCP_DATABASE_READONLY_USER_PASSWORD
でデフォルトユーザーのパスワードを設定した場合、同じ環境変数を liferay
サービスに追加します。 それ以外の場合は、この変数を追加しないでください。 これにより、サービスはデフォルトのパスワードを使用します。
この変数は、 [環境変数] タブ内から追加できます。