主要コンテンツにスキップ

TypeScriptとCockroachDBを使用して既存のデータベースを接続する

データベースの接続

データベースを接続するには、Prismaスキーマのdatasourceブロックのurlフィールドをデータベースの接続URLに設定する必要があります。

prisma/schema.prisma
datasource db {
provider = "postgresql"
url = env("DATABASE_URL")
}

urlは、.envで定義されている環境変数経由で設定されます。これで、接続URLを自分のデータベースを指すように調整する必要があります。

接続URL

お使いのデータベースの接続URLの形式は、使用するデータベースによって異なります。CockroachDBはPostgreSQLの接続URL形式を使用しており、以下の構造を持っています(すべて大文字で表記されている部分は、特定の接続詳細のプレースホルダーです)。

postgresql://USER:PASSWORD@HOST:PORT/DATABASE?PARAMETERS

各コンポーネントの簡単な説明は次のとおりです。

  • USER: データベースユーザーの名前
  • PASSWORD: データベースユーザーのパスワード
  • PORT: データベースサーバーが稼働しているポート。CockroachDBのデフォルトは26257です。
  • DATABASE: データベースの名前
  • PARAMETERS: その他の接続パラメータ。CockroachDBのドキュメントはこちらを参照してください。

CockroachDB ServerlessまたはCockroach DedicatedCockroachDB Cloudでホストされているデータベースの場合、接続URLは次のようになります。

.env
DATABASE_URL="postgresql://<myusername>:<mypassword>@<short-id>.<region>.cockroachlabs.cloud:26257/defaultdb?sslmode=verify-full&sslrootcert=$HOME/.postgresql/root.crt&options=--<mycluster>"

CockroachDB Cloudで接続文字列を見つけるには、データベースクラスターの概要ページにある「接続 (Connect)」ボタンをクリックし、「接続文字列 (Connection string)」タブを選択します。

ローカルでホストされているCockroachDBデータベースの場合、接続URLは次のようになります。

.env
DATABASE_URL="postgresql://root@localhost:26257?sslmode=disable"

CockroachDBをコマンドラインから起動すると、接続文字列はウェルカムテキストの一部として表示されます。

© . All rights reserved.