Back to Drizzle Orm

ConnectPlanetScalePostgres

src/mdx/get-started/postgresql/ConnectPlanetScalePostgres.mdx

latest1.3 KB
Original Source

import CodeTabs from "@mdx/CodeTabs.astro"; import Callout from '@mdx/Callout.astro';

Create a index.ts file in the src directory and initialize the connection:

<CodeTabs items={["node-postgres", "node-postgres with config", "your node-postgres driver"]}>

typescript
import 'dotenv/config';
import { drizzle } from 'drizzle-orm/node-postgres';

const db = drizzle(process.env.DATABASE_URL!);
typescript
import 'dotenv/config';
import { drizzle } from 'drizzle-orm/node-postgres';

// You can specify any property from the node-postgres connection options
const db = drizzle({ 
  connection: { 
    connectionString: process.env.DATABASE_URL!,
    ssl: true
  }
});
typescript
import 'dotenv/config';
import { drizzle } from "drizzle-orm/node-postgres";
import { Pool } from "pg";

const pool = new Pool({
  connectionString: process.env.DATABASE_URL!,
});
const db = drizzle({ client: pool });
</CodeTabs> <Callout title='Connection ports' type='info'> PlanetScale Postgres supports two connection ports: - **Port 5432** — Direct connection to PostgreSQL. Total connections are limited by your cluster's `max_connections` setting. - **Port 6432** — Connection via PgBouncer for connection pooling. Recommended when you have many simultaneous connections. </Callout>