DATABASE_URLで接続

どのデータベースにも接続する最速の方法 — 1つのURL文字列を貼り付けるだけで完了。

ホスト、ポート、ユーザー名、パスワード、データベース名の個別フィールドをフォームに入力する代わりに、DATABASE_URLと呼ばれる1つの文字列を貼り付けるだけで、どのデータベースにも接続できます。これが接続する最速の方法であり、ほとんどのクラウドデータベースプロバイダーはダッシュボードから直接コピーできるものを提供しています。

DATABASE_URLとは?

DATABASE_URLは、データベース接続を開くために必要なすべてをエンコードした1行のテキストです。ウェブアドレス(URL)と同じパターンに従っているため、読みやすく、ツール間で共有しやすいです。

以下はPostgreSQLのDATABASE_URLの例です:

postgresql://myuser:[email protected]:5432/myapp_production

各部分を分解してみましょう:

部分意味
エンジンpostgresql://データベースのタイプ。1DevToolにどのドライバーを使用するかを指示します。
ユーザー名myuserログインするデータベースユーザー。
パスワードmypasswordそのユーザーのパスワード。
ホストdb.example.comデータベースが実行されているサーバー。ドメイン名またはIPアドレスです。
ポート5432データベースがリッスンするネットワークポート。PostgreSQLのデフォルトは5432です。
データベース名myapp_productionそのサーバー上で接続したい特定のデータベース(またはスキーマ)。

このURLを1DevToolに貼り付けると、各部分が自動的に読み取られ、すべての接続フィールドが入力されます。手動で何かを入力する必要はありません。

DATABASE_URLの探し方

すべてのクラウドデータベースプロバイダーは、ダッシュボードのどこかに接続文字列を表示しています。最も一般的なものの探し方を紹介します:

Supabase プロジェクト → プロジェクト設定(サイドバーのギアアイコン) → データベースタブ → 接続文字列までスクロール → URIタブをクリック。表示されている文字列をコピーします。postgresql://postgres:[YOUR-PASSWORD]@...supabase.co:5432/postgresのようになります。

Neon ダッシュボード → プロジェクトを選択 → 右パネルの接続の詳細をクリック → 接続文字列をコピー。Neonはサーバーレスエンドポイント付きのpostgresql://URLを使用します。

PlanetScale データベース → 接続をクリック → フレームワークドロップダウンから**「Other」**を選択 → 接続文字列をコピー。PlanetScaleはSSL証明子が埋め込まれた、またはパラメータで必要なmysql://URLを使用します。

Railway プロジェクトを開く → データベースサービスをクリック → 変数タブ → DATABASE_URLを探す。Railwayはこの変数をアプリに自動的に注入するため、環境にすでに存在する場合があります。

Heroku アプリ → 設定タブ → Config Varsまでスクロール → DATABASE_URLを探す。HerokuはHeroku Postgresアドオンに対してこれを自動的に設定します。

ローカルPostgreSQL(自分のマシンで実行) PostgreSQLをローカルにインストールし、デフォルトを変更していない場合、URLは次のようになります:

postgresql://postgres:password@localhost:5432/mydb

passwordを実際のpostgresユーザーパスワードに、mydbを作成したデータベース名に置き換えます。

ローカルMySQL

mysql://root:password@localhost:3306/mydb

ステップバイステップ:1DevToolで接続

  1. 1DevToolでプロジェクトを開き、左ツールバーのデータベースアイコン(シリンダーシンボル)をクリックするか、MacでCmd+D / WindowsでCtrl+Dを押します。
  2. データベースパネル左側の接続レールで**+**ボタンをクリックします。接続を追加というタイトルのダイアログが開きます。
  3. ダイアログの上部に**「DATABASE_URLを貼り付け」**というラベルのフィールドが表示されます。そのフィールドをクリックします。
  4. DATABASE_URLを貼り付けます。貼り付けるとすぐに、1DevToolがURLを読み取り、下のホストポートユーザーパスワードデータベースフィールドを自動的に入力します。リアルタイムで入力されるのが確認できます。
  5. **「接続をテスト」**をクリックします。1DevToolがデータベースへの接続を試みます。成功すると、緑のチェックマークと「接続に成功しました」というメッセージが表示されます。
  6. **「保存」**をクリックします。接続がこのプロジェクト用に保存されます。次回1DevToolを開いたときもそこにあります。
  7. テーブルとコレクションが左サイドバーに表示されます。接続完了、クエリを実行する準備ができました。

接続後のデータベーステーブルリスト

エンジンオプションを表示するマルチデータベースサポート

各エンジンのDATABASE_URL形式

サポートされているすべてのエンジンのURL形式を以下に示すので、手動で作成または確認できます:

# PostgreSQL(Supabase、Neon、Timescale、CockroachDBも含む) postgresql://username:password@host:5432/database # MySQL(MariaDBも含む) mysql://username:password@host:3306/database # Microsoft SQL Server mssql://username:password@host:1433/database # MongoDB(標準) mongodb://username:password@host:27017/database # MongoDB Atlas(クラウド — SRV形式を使用) mongodb+srv://username:[email protected]/database # Redis(認証なし) redis://host:6379 # Redis(パスワードあり) redis://:password@host:6379 # TLS/SSL付きRedis rediss://:password@host:6380 # ClickHouse clickhouse://username:password@host:9000/database # Elasticsearch(認証なし) elasticsearch://host:9200 # Elasticsearch(認証あり) elasticsearch://username:password@host:9200 # CouchDB couchdb://username:password@host:5984/database

一般的な接続エラー

テスト接続が失敗した場合、このテーブルで何が間違っていたかを特定するのに役立ちます:

エラー理由修正方法
接続拒否データベースが実行されていないか、ポート番号が間違っているデータベースサーバーが起動していることを確認。ポートがDBの設定と一致していることを確認。
認証失敗ユーザー名またはパスワードが間違っている資格情報を再確認。ダッシュボードからコピーした場合、余分な空白が含まれていないことを確認。
SSLが必要クラウドデータベースが暗号化された接続を必要としているが、URLが要求していないPostgreSQL URLの末尾に?sslmode=requireを追加、またはMySQLの場合は?ssl=trueを追加。
不明なホスト / ホストを解決できないホスト名のスペルミス、またはマシンが到達できないホスト名のタイプミスを確認。プライベートデータベースに接続している場合、VPNが接続されていることを確認。
タイムアウトデータベースホストに到達できない(ファイアウォールまたは間違ったIP)IPアドレスがデータベースの許可リストにあることを確認。ほとんどのクラウドプロバイダーには設定に「ネットワーク」または「信頼されたIP」セクションがあります。

警告: DATABASE_URLをGitにコミットしないでください。データベースパスワードがプレーンテキストで含まれています。.envファイルに保存し、.env.gitignoreに追加してください。誤ってコミットした場合は、データベースプロバイダーのダッシュボードで即座にパスワードをローテーションしてください。

ヒント: 1DevToolは接続詳細をローカルマシン上で暗号化して保存します。それらがコンピュータから離れることはなく、サーバーに送信されることもありません。