Vercelは、フロントエンドおよびフルスタック開発者を対象とし、迅速なビルド、デプロイ、グローバル配信機能を提供します。OceanBase CloudとVercelを組み合わせることで、MySQL互換のOceanBaseデータベースを基盤としてフロントエンドアプリケーションを迅速に構築・拡張でき、高可用性、拡張性を備えたデータセキュリティ・コンプライアンス機能を有するクラウドデータベースにより、業務データを保護できます。
本記事では、環境変数を設定することでOceanBase CloudデータベースをVercelプロジェクトに接続し、Vercel上にデプロイされたアプリケーションがOceanBaseデータにアクセスできるようにする方法を紹介します。
前提条件
- 環境に利用可能なトランザクション型(MySQL)クラスタインスタンスがあります。テナントの作成を参照してテナント作成を完了した後、以下の手順を実行してください。
- 利用可能なMySQLテナント、MySQLデータベース、およびアカウントが既に存在し、アカウントには読み書き権限が付与されています。作成が必要な場合は、アカウントの作成およびデータベースの作成(MySQLのみ)をご参照ください。
- プロジェクト管理者またはインスタンス管理者ロールを持ち、プロジェクト内のインスタンスに対する読み書き操作が可能です。権限がない場合は、組織管理者に連絡して追加してもらってください。
- Vercelアカウントに登録されています。まだ登録されていない場合は、Vercelのドキュメント個人アカウントの作成またはチームの作成をご参照ください。
- Vercelでプロジェクトを作成またはインポート済みです。デプロイするフロントエンドアプリケーションがまだない場合は、Vercelでテンプレートから新しいプロジェクトを作成するか、既存のコードリポジトリをインポートできます。また、OceanBaseが提供するNext.js Vercelサンプルプロジェクトを使用して体験することもできます。
注意
Vercelのデプロイは動的IPアドレスを使用します。OceanBase Cloudクラスタインスタンスを使用する場合は、コンソールでインスタンスのIPホワイトリストをすべてのIPアクセスを許可するように設定してください(例:0.0.0.0/0)。そうでない場合、Vercel上のアプリケーションがデータベースに接続できない可能性があります。
操作手順1:データベース接続情報を取得する
OceanBase Cloudコンソールにログインします。インスタンス一覧ページで、対象のトランザクション型インスタンスの情報を展開し、対象のテナントで、接続 > 接続文字列を取得する をクリックします。
ポップアップウィンドウで、パブリックネットワーク接続 を選択します。
パブリックネットワーク経由で接続 ページで以下の設定を完了し、接続文字列を生成します:
(オプション) テナントに既に生成されたパブリックアドレスがない場合、ステップ1: パブリックアドレスを取得する の下で、パブリックエンドポイントを取得 をクリックしてパブリックアドレスを取得します。既にパブリックアドレスがある場合は、この手順をスキップしてください。アドレスが生成されたら、次へ をクリックします。
ステップ2: セキュリティ設定 で、以下の設定を完了した後、次へ をクリックします:
IPアドレスを許可リストに追加:追加 をクリックし、すべてのIPアドレスからのアクセスを許可 を選択し、確定 をクリックします。
証明書のダウンロード:CA証明書をダウンロード をクリックして証明書をダウンロードし、認証を完了します。
ステップ3: データベースへのアクセス で、前提条件で作成したデータベースとアカウントを選択し、接続方式として MySQL CLI を選択します。完了後、接続文字列をコピーして、後の設定に使用します。
操作手順2:Vercelで環境変数を設定し、デプロイする
Vercelコンソールにアクセスし、Import Project > Import を選択します。

Let's build something new のダイアログにサンプルプロジェクトコードを入力し、Continue をクリックします。
https://github.com/sc-source/oceanbase-nextjs-vercel-demo.git
デプロイページで、Environment Variables に DATABASE_URL 環境変数を追加します:
構成パラメータ説明Key DATABASE_URLValue mysql://<User>:<Password>@<Endpoint>:<Port>/<Database><User>、<Password>、<Endpoint>、<Port>、<Database>を ステップ1 でOB Cloudコンソールから取得した接続情報(またはコピーした接続文字列から対応する値を取得したもの)に置き換えてください。 例:mysql://admin:YourPassword@xxx.oceanbase.cloud:3306/my_db説明
Import Projectプロセスで統合を設定した場合は、ウィザードで直接DATABASE_URLを入力できます。既存のプロジェクトで設定した場合は、Settings>Environment Variablesで追加してから、変数を有効にするために再デプロイしてください。
プロジェクトをデプロイします。デプロイが成功すると、Vercelアプリケーションは
DATABASE_URLを使用してOB Cloudクラウドデータベースに接続し、読み書きを実行できるようになります。