TiDB CloudとVercelを統合する
Vercelはフロントエンド開発者向けのプラットフォームであり、イノベーターがひらめきの瞬間に創造するために必要なスピードと信頼性を提供します。
TiDB CloudとVercelを組み合わせることで、MySQL互換のリレーショナルモデルを使用して新しいフロントエンドアプリケーションをより迅速に構築できるだけでなく、回復力、拡張性、そして最高レベルのデータプライバシーとセキュリティを備えたプラットフォームによって、自信を持ってアプリケーションを成長させることができます。
このガイドでは、以下のいずれかの方法を使用して、 TiDB CloudのリソースをVercelプロジェクトに接続する方法について説明します。
上記2つの方法のいずれにおいても、 TiDB Cloudはデータベースにプログラムで接続するための以下のオプションを提供します。
- クラスタ: 直接接続またはTiDB Cloud Serverless Driverを使用して、 TiDB Cloudクラスターを Vercel プロジェクトに接続します。
- データアプリ: HTTP エンドポイントのコレクションを通じてTiDB Cloudクラスターのデータにアクセスします。
前提条件
接続する前に、以下の前提条件が満たされていることを確認してください。
VercelアカウントとVercelプロジェクト
Vercelにアカウントとプロジェクトをお持ちであることが前提となります。お持ちでない場合は、以下のVercelドキュメントを参照して作成してください。
- 新しい個人アカウントを作成する、 新しいチームを作る。
- Vercel でプロジェクトを作成していること。デプロイするアプリケーションがない場合は、 TiDB Cloud Starterテンプレートを使用して試すことができます。
Vercelプロジェクトは、1つのTiDB Cloudクラスターにしか接続できません。統合を変更するには、まず現在のクラスターとの接続を解除してから、新しいクラスターに接続する必要があります。
TiDB CloudアカウントとTiDBクラスタ
TiDB Cloudにアカウントとクラスターが既に作成されている必要があります。アカウントとクラスターをお持ちでない場合は、以下の手順に従って作成してください。
TiDB Cloud Vercel統合を介してVercelと統合するには、組織のOrganization Ownerロール、またはTiDB Cloudのターゲット プロジェクトのProject Ownerロールに所属することが求められます。詳細については、 ユーザーロールを参照してください。
1つのTiDB Cloudクラスターは、複数のVercelプロジェクトに接続できます。
データアプリとエンドポイント
データアプリを介してTiDB Cloudクラスターに接続する場合は、事前にTiDB Cloudに対象のデータアプリとエンドポイントが設定されている必要があります。設定されていない場合は、以下の手順に従って作成してください。
- TiDB Cloudコンソールで、プロジェクトのData Serviceページに移動します。
- あなたのプロジェクトに合わせてデータアプリを作成する。
- ターゲットのTiDB Cloudクラスターにデータアプリをリンクします。
- エンドポイントを管理することで、SQL文を実行するようにカスタマイズできます。
Vercelプロジェクトは、1つのTiDB Cloudデータアプリにしか接続できません。Vercelプロジェクトのデータアプリを変更するには、まず現在のアプリとの接続を解除してから、新しいアプリに接続する必要があります。
TiDB Cloud Vercelとの連携を介して接続します。
TiDB Cloud Vercel 統合経由で接続するには、 Vercelの統合マーケットプレイスからTiDB Cloud統合ページに移動します。この方法を使用すると、接続するクラスターを選択でき、 TiDB Cloud はVercel プロジェクトに必要なすべての環境変数を自動的に生成します。
統合ワークフロー
詳細な手順は以下のとおりです。
TiDB Cloud Vercelとの統合ページの右上領域にあるAdd Integrationをクリックします。 TiDB Cloudの追加ダイアログが表示されます。
ドロップダウンリストから統合の範囲を選択し、 Continueをクリックしてください。
統合を追加するVercelプロジェクトを選択し、 Continueをクリックします。
統合に必要な権限を確認し、 Add Integrationをクリックしてください。すると、 TiDB Cloudコンソールの統合ページに移動します。
統合ページで、以下の操作を行います。
- 対象となるVercelプロジェクトを選択し、 Nextをクリックしてください。
- 対象となるTiDB Cloud組織とプロジェクトを選択してください。
- 接続タイプとしてClusterを選択してください。
- 対象のTiDB Cloudリソースを選択してください。Clusterのドロップダウンリストが空の場合、または新しいTiDB Cloud StarterまたはTiDB Cloud Essentialインスタンスを選択する場合は、リストの+ Create Clusterをクリックして作成してください。
- 接続するデータベースを選択してください。Databaseのドロップダウンリストが空の場合、または新しいデータベースを選択する場合は、リスト内の+ Create Databaseをクリックして作成してください。
- Vercelプロジェクトで使用しているフレームワークを選択してください。対象のフレームワークが一覧にない場合は、 Generalを選択してください。フレームワークによって環境変数が異なります。
- プレビュー環境用に新しいブランチを作成するために、Branchingを有効にするかどうかを選択してください。
- Add Integration and Return to Vercelをクリックします。
Vercelダッシュボードに戻り、Vercelプロジェクトに移動して、 Settings > Environment Variablesをクリックし、対象のTiDBクラスタの環境変数が自動的に追加されているかどうかを確認してください。
以下の変数が追加された場合、統合は完了です。
General
TIDB_HOST TIDB_PORT TIDB_USER TIDB_PASSWORD TIDB_DATABASEPrisma
DATABASE_URLTiDB Cloud Serverless Driver
DATABASE_URL
TiDB Cloud Vercelとの統合ページの右上領域にあるAdd Integrationをクリックします。 TiDB Cloudの追加ダイアログが表示されます。
ドロップダウンリストから統合の範囲を選択し、 Continueをクリックしてください。
統合を追加するVercelプロジェクトを選択し、 Continueをクリックします。
統合に必要な権限を確認し、 Add Integrationをクリックしてください。すると、 TiDB Cloudコンソールの統合ページに移動します。
統合ページで、以下の操作を行います。
- 対象となるVercelプロジェクトを選択し、 Nextをクリックしてください。
- 対象となるTiDB Cloud組織とプロジェクトを選択してください。
- 接続タイプとしてData Appを選択してください。
- 対象のTiDBデータアプリを選択してください。
- Add Integration and Return to Vercelをクリックします。
Vercelダッシュボードに戻り、Vercelプロジェクトに移動して、 Settings > Environment Variablesをクリックし、対象のデータアプリの環境変数が自動的に追加されているかどうかを確認してください。
以下の変数が追加された場合、統合は完了です。
DATA_APP_BASE_URL DATA_APP_PUBLIC_KEY DATA_APP_PRIVATE_KEY
接続を設定する
TiDB Cloud Vercelとの統合をインストールしている場合は、統合内の接続を追加または削除できます。
Vercelダッシュボードで、 Integrationsをクリックします。
TiDB CloudのエントリでManageをクリックします。
Configureをクリックします。
接続を追加または削除するには、 Add LinkまたはRemoveをクリックします。
接続を削除すると、統合ワークフローによって設定された環境変数もVercelプロジェクトから削除されます。ただし、この操作はTiDB Cloudクラスタのデータには影響しません。
TiDB Cloudのブランチ機能に接続します
Vercel のプレビューデプロイメント機能を使用すると、変更を Git プロジェクトの本番ブランチにマージすることなく、ライブデプロイメントでアプリの変更をプレビューできます。TiDB Cloud Branchingを使用すると、Vercel プロジェクトのブランチごとに新しいインスタンスを作成できます。これにより、本番データに影響を与えることなく、ライブデプロイメントでアプリの変更をプレビューできます。
TiDB Cloud Branching を有効にするには、 TiDB Cloud Vercel統合ワークフローで次のことを確認する必要があります。
- 接続タイプとしてClusterを選択してください。
- プレビュー環境用の新しいブランチを作成するには、Branchingを有効にしてください。
Gitリポジトリに変更をプッシュすると、Vercelがプレビューデプロイメントをトリガーします。TiDB Cloudとの連携により、Gitブランチ用のTiDB Cloudクラスタのブランチが自動的に作成され、環境変数が設定されます。詳細な手順は以下のとおりです。
Gitリポジトリに新しいブランチを作成します。
cd tidb-prisma-vercel-demo1 git checkout -b new-branch変更を加えて、その変更をリモートリポジトリにプッシュします。
Vercelは、新しいブランチのプレビューデプロイメントを開始します。
デプロイ時に、 TiDB Cloud統合機能は、Gitブランチと同じ名前のブランチをクラスタ用に自動的に作成します。ブランチが既に存在する場合は、 TiDB Cloud統合機能はこの手順をスキップします。
ブランチの準備が完了すると、 TiDB Cloud統合によって、Vercelプロジェクトのプレビューデプロイメントで環境変数が設定されます。
TiDB Cloudとの連携により、ブランチの準備が整うまで待機するためのブロッキングチェックも登録されます。このチェックは手動で再実行することも可能です。
チェックに合格したら、プレビュー環境にアクセスして変更内容を確認できます。
環境変数を手動で設定して接続します
TiDBクラスタの接続情報を取得します。
接続情報は、クラスタの接続ダイアログから取得できます。ダイアログを開くには、My TiDBページに移動し、対象リソースの名前をクリックして概要ページを開き、右上隅のConnectをクリックします。
Vercel ダッシュボード > Vercel プロジェクト > Settings > Environment Variablesに移動し、TiDB クラスターの接続情報に従って各環境変数の値を宣言する。
ここでは例として、PrismaアプリケーションとTiDB Cloud Starterインスタンスを使用します。以下は、 TiDB Cloud StarterインスタンスのPrismaスキーマファイルにおけるデータソース設定です。
datasource db {
provider = "mysql"
url = env("DATABASE_URL")
}
Vercelでは、環境変数を次のように宣言できます。
- Key=
DATABASE_URL - Value=
mysql://<User>:<Password>@<Endpoint>:<Port>/<Database>?sslaccept=strict
TiDB Cloud コンソールでは、 <User> 、 <Password> 、 <Endpoint> 、 <Port> 、および<Database>の情報を取得できます。
データアプリとそのエンドポイントをまだ作成していない場合は、データアプリを管理するとエンドポイントの管理の手順に従ってデータアプリとそのエンドポイントを作成します。
Vercel ダッシュボード > Vercel プロジェクト > Settings > Environment Variablesに移動し、データアプリの接続情報に従って各環境変数の値を宣言する。
Vercelでは、環境変数を次のように宣言できます。
- Key=
DATA_APP_BASE_URL - Value=
<DATA_APP_BASE_URL> - Key=
DATA_APP_PUBLIC_KEY - Value=
<DATA_APP_PUBLIC_KEY> - Key=
DATA_APP_PRIVATE_KEY - Value=
<DATA_APP_PRIVATE_KEY>
<DATA_APP_BASE_URL>、<DATA_APP_PUBLIC_KEY>、<DATA_APP_PRIVATE_KEY>の情報は、 TiDB CloudコンソールのData Serviceページから取得できます。- Key=






