Skip to main content

PlanetScale Branch Manager

Visualize your PlanetScale database branch hierarchy and generate pscale CLI commands for every workflow step — branch creation, deploy requests, schema diffs, and connections.

✓ Visual branch tree editor ✓ pscale CLI command generator ✓ Deploy request workflow guide

Frequently Asked Questions

What is PlanetScale database branching?▼

PlanetScale branches are isolated copies of your database schema, similar to Git branches for code. You can create a feature branch, safely test schema changes (ALTER TABLE, CREATE INDEX), then open a deploy request to merge those changes into production — without locking tables or causing downtime.

What is a deploy request in PlanetScale?▼

A deploy request is PlanetScale's equivalent of a pull request for database schema changes. It shows the DDL diff between your feature branch and the target (usually main/production), lets your team review the changes, and deploys them using Online Schema Change (OSC) — zero-downtime migrations that don't lock tables.

How does PlanetScale handle zero-downtime migrations?▼

PlanetScale uses gh-ost (GitHub Online Schema Change) under the hood. Instead of ALTER TABLE which locks the table, it creates a shadow copy of the table, applies changes, syncs data via triggers, then swaps the tables atomically. Reads and writes continue uninterrupted throughout the migration.

Can I run raw SQL migrations on a PlanetScale branch?▼

Yes. Connect to your branch via pscale connect or pscale shell, then run DDL statements. However, note that PlanetScale's foreign key constraint support has limitations — they recommend using application-level foreign key enforcement instead of database-level constraints for the online migration system to work correctly.

What is the difference between pscale connect and pscale shell?▼

pscale connect opens a local MySQL-compatible proxy on a port (default 3306) — use this to connect your app or any MySQL client. pscale shell opens an interactive MySQL REPL directly in your terminal — useful for running quick queries, schema commands, or seeding data on a specific branch.

How do I use PlanetScale with Prisma or Drizzle?▼

For Prisma: use the @planetscale/database driver with DATA_PROXY or direct connection. Set databaseUrl in schema.prisma. For Drizzle: use drizzle-orm/planetscale-serverless with @planetscale/database for edge/serverless environments, or drizzle-orm/mysql2 for Node.js servers. Both support the PlanetScale branching workflow.

Share this tool: X / Twitter LinkedIn
✓ 60,000+ developers use DevPlaybook ★★★★★ 4.8 / 5 on Gumroad ✓ MIT licensed · Instant download ✓ No login required

Related Products

on Gumroad

You Might Also Need

More Free Tools

Enjoying this tool? Get more like it.

Weekly developer tool guides, productivity playbooks & AI tricks. Free. No spam.

DevPlaybook Pro 7 days free

Unlock AI-Powered Dev Tools

  • ⚡ AI Code Review, Doc Generator & SQL Builder
  • ⚡ All premium templates & early access
  • ⚡ Member discounts on Gumroad products
Start Free Trial →

$9/mo after trial · Cancel anytime

Want the full toolkit?

Get DevPlaybook Pro

Every template, guide, boilerplate, and automation script in one bundle. 13 premium products — grab them all at once and save big.

$79
$241 separately Save $162 (67% off)
Get DevPlaybook Pro — $79 →

MIT licensed · Instant download · No subscription

See what's included → Browse all deals →