ドキュメント
ライブデータベース
実際のデータベースを接続すると、JillionDB と食い違ったときに知らせます。Pro と Enterprise で使えます。
できること
JillionDB は PostgreSQL または MySQL のテーブル定義を読み取り、プロジェクトのスキーマと比べます。JillionDB の外でデータベースが変更された場合や、承認済みの変更がまだ適用されていない場合、違いをひとつずつわかりやすい言葉で表示します。
データを読めないログインを作る
管理者としてデータベースで一度だけ実行します。データベース名と長いパスワードはご自身のものに置き換えてください。
PostgreSQL(Neon、Supabase、Amazon RDS など):
CREATE ROLE jilliondb_reader LOGIN PASSWORD 'choose-a-long-password';
GRANT CONNECT ON DATABASE your_database TO jilliondb_reader;
GRANT USAGE ON SCHEMA public TO jilliondb_reader;MySQL:
CREATE USER 'jilliondb_reader'@'%' IDENTIFIED BY 'choose-a-long-password';
GRANT REFERENCES ON your_database.* TO 'jilliondb_reader'@'%';PostgreSQL ではどのログインでもテーブル定義を読めます。MySQL の REFERENCES 権限は定義を見せますが読み取りは許しません。どちらのログインでもデータは見えません。
接続する
- プロジェクトを開き、ツールバーのデータベースボタンを押します。
- サービスの接続文字列(上のログインを使用)を貼り付けるか、項目ごとに入力します。
- 暗号化を選びます。Neon、Supabase など多くのホスト型データベースは 暗号化し、証明書を確認、Amazon RDS のように独自の証明書を使うサービスは 暗号化のみ です。
- 接続して確認 を押します。JillionDB がデータベースを読み、一致しているかを表示します。
食い違ったとき
一覧には、データベースに合わせるために JillionDB が行う変更が表示されます。JillionDB を合わせる を押すとプロジェクトがそろいます。元に戻せるよう、現在のスキーマは先にバージョンとして保存されます。データベースのほうが遅れている場合は、いつもどおりマイグレーションを適用してから 今すぐ確認 を押してください。
自動確認がオンの間は数時間ごとに確認し、前回から 1 時間以上たってプロジェクトを開いたときにも確認します。
接続できないとき
データベースが特定の IP アドレスしか受け付けない場合は、162.254.39.64 を許可してください。プライベートネットワーク上のデータベースには接続できません。サービスが用意する公開アドレスを使ってください。
プライベート・ローカル・SQLite のデータベース:ブリッジ
データベースがノート PC 上やプライベートネットワーク内にある場合や SQLite ファイルの場合など、JillionDB から届かないときはブリッジを使います。データベースのある場所でテーブル定義を読み取り、それだけを JillionDB に送る小さなオープンソースのコマンドです。データベースのパスワードはマシンの外に出ず、JillionDB から接続しに行くこともありません。
- プロジェクトを開き、データベースボタンを押して ブリッジを実行 を選びます。
- トークンを作成 を押してコピーします。このトークンでできるのは、このプロジェクトへのテーブル定義の送信だけです。
- データベースに届く場所で、ご自身の接続文字列か SQLite ファイルのパスを使ってコマンドを実行します。
npx jilliondb push --token jdbb_… --url postgresql://user:password@localhost:5432/app結果はすぐにターミナルとプロジェクトに表示されます。--watch を付けると実行し続けて 15 分ごとに送信します。デプロイのたびに CI で --fail-on-drift を付けて実行すれば、データベースと JillionDB が食い違ったときにビルドを止められます。--print を付けると、何も送らずに送信内容をそのまま確認できます。
ブリッジには Node 20 以上(SQLite ファイルは Node 22.13 以上)が必要です。トークンは JILLIONDB_TOKEN、データベースは DATABASE_URL で指定することもできます。
接続を解除する
同じ画面で 接続を解除 を押します。保存したログインは削除され、確認も止まります。それまでパスワードは暗号化して保存されます。ログインはいつでもデータベース側から削除できます。