- Creating a new Postgres database
- Cluster configuration options
- Connecting to your database
Prerequisites
Before you begin, make sure you have a PlanetScale account. After you create an account, you’ll be prompted to create a new organization, which is essentially a container for your databases, settings, and members. After creating your organization, it’s important to understand the relationship between databases, branches, and clusters.- Database: Your overall project (e.g., “my-ecommerce-app”)
- Branch: Isolated database deployments that provide you with separate environments for development and testing, as well as restoring from backups - learn more about branching
- Cluster: The underlying compute and storage infrastructure that powers each branch
Create a new database
- Dashboard
- CLI
Step 1: Navigate to database creation
Log in to your PlanetScale dashboard
Step 2: Choose database engine
On the database creation form, you’ll see two engine options:
- Vitess (MySQL-compatible)
- Postgres (PostgreSQL-compatible)
Step 3: Configure your database cluster
Database name: Enter a unique name for your database
This “name” is referenced in the PlanetScale Dashboard and APIs and not created as a logical database inside of Postgres.
Region: Choose the primary region where your database will be hosted. For the lowest latency, select a region near you or your application’s hosting location.
Cluster configuration: Select your preferred cluster size and CPU architecture
Step 4: Create the database cluster
What happens during creation
When you create a Postgres database cluster, PlanetScale automatically:- Provisions a PostgreSQL cluster in your selected region
- Creates the initial
mainbranch - Prepopulates Postgres with required default databases
- Sets up monitoring and metrics collection
- Configures backup and high availability settings
Create credentials and connect
In this section you’ll create the “Default role” in your PlanetScale dashboard to create connection credentials for your database branch.The “Default role” is meant purely for administrative purposes. You can only create one and it has significant privileges for your database cluster and you should treat these credentials carefully. After completing this quickstart, it is strongly recommended that you create another role for your application use-cases.
- Dashboard
- CLI

Navigate to your database in the PlanetScale dashboard
You can generate connection strings under “How are you connecting?” for major languages, frameworks, and tools.
Your connection details will include:

- Host: the DNS name of your database endpoint
- Username: automatically formatted for routing to the correct
branch - Password: A securely generated password
- Database:
postgres(default database) - Port:
5432(standard PostgreSQL port) or6432(for using PgBouncer)
Passwords are shown only once. If you lose your record of the password, you must reset the password.
Connection strings
PlanetScale provides connection strings in various formats for different frameworks and languages. Here are some common examples:General PostgreSQL URL
General PostgreSQL URL
psql command line
psql command line
terminal
Node.js (node-postgres)
Node.js (node-postgres)
db.ts
Rails
Rails
Default databases
When your database branch is first created, there are a number of default databases that are created at the same time.| Database | Purpose |
|---|---|
| postgres | Default user database |
| pscale_admin | PlanetScale platform |
| pscale_exporter | PlanetScale platform |
| pscale_pgbouncer | PlanetScale platform |
template0 and template1 | Postgres database defaults |
Security requirements
All connections to Postgres databases require:- SSL/TLS encryption - Always use
sslmode=requireor equivalent - Certificate verification - Connections verify PlanetScale’s SSL certificates
- Secure passwords - Generated passwords use cryptographically secure random generation
Password management
- Password reset: You can reset your default user password anytime from the dashboard
- No password rotation required: Passwords don’t expire unless you set them to
- Single credential per branch: Each branch has one default user credential
Next steps
Once your database is created, you can:- Create additional branches for development and testing
- Connect your applications using the connection credentials above
- Monitor performance and usage through the dashboard
- Scale your cluster as your needs grow
- Create additional PostgreSQL roles within your database using SQL
- Enable pg_strict to prevent accidental dangerous queries from running


