Artículos sobre: Bases de datos & almacenamiento

Cómo conectar DrizzleORM al PostgreSQL alojado en Square Cloud

Cómo conectar DrizzleORM al PostgreSQL alojado en Square Cloud


Introducción


Este tutorial te guiará por los pasos para conectar tu DrizzleORM a tu base de datos PostgreSQL alojada en Square Cloud.

  • Primero, necesitas tener un plan de pago activo en tu cuenta. Puedes ver nuestros planes y adquirir uno según tu necesidad aquí.
  • Después, necesitarás una base de datos PostgreSQL alojada en Square Cloud. Si aún no creaste una, puedes crearla aquí.


Requisitos previos


  • Antes de empezar, asegúrate de haber creado una base de datos en Square Cloud y de haberte conectado a ella con algún cliente de gestión como DBeaver u otro para crear bases y tablas.


Creando una base de datos PostgreSQL en Square Cloud


  • También será necesario tener Drizzle configurado en tu proyecto. Si aún no lo has hecho, puedes seguir la documentación oficial de DrizzleORM aquí.


Conectando Drizzle con PostgreSQL


Para conectar Drizzle a PostgreSQL, necesitarás obtener la información de conexión: la URL y los certificados.


URL de la base de datos


La URL de la base de datos que obtienes en las configuraciones de conexión proporciona usuario, contraseña, host y puerto para la conexión.


postgresql://username:password@host:port/dbname


Nota: Si no creaste una base específica, puedes usar squarecloud como dbname.
postgresql://username:password@host:port/squarecloud


Certificados


En las configuraciones de conexión de la base de datos, descarga el archivo certificate.pem. Usaremos ese archivo como ca, cert y key para conectar a la base.


Descargando el certificado PEM en Square Cloud


Conectando


Para realizar la conexión, debes configurar el archivo drizzle.config.ts. En este momento puedes usar las credenciales por separado.

Configura los parámetros de conexión como en el ejemplo de abajo:


// drizzle.config.ts
import { defineConfig } from 'drizzle-kit'
import fs from "fs";
import path from "path";

const fullPath = path.join(process.cwd(), "certs/certificate.pem")
const cert = fs.readFileSync(fullPath, "utf-8")

export default defineConfig({
dialect: "postgresql",
dbCredentials: {
host: "square-cloud-db-{id}.squareweb.app",
port: 7171,
user: "squarecloud",
password: "password",
database: "squarecloud",
ssl: {
ca: cert,
key: cert,
cert: cert
}
},

schema: "path/to/schema.ts",
out: "./drizzle",
migrations: {
table: '__drizzle_migrations',
schema: 'drizzle'
}
});


También necesitas configurar el client.ts para usar los certificados de manera similar.


// client.ts
import { drizzle } from "drizzle-orm/node-postgres";
import { Pool } from "pg";
import * as schema from './schema';
import fs from "fs";
import path from "path";

const fullPath = path.join(process.cwd(), "certs/certificate.pem")
const cert = fs.readFileSync(fullPath, "utf-8")

const connection = Pool({
host: "square-cloud-db-{id}.squareweb.app",
port: 7171,
user: "squarecloud",
password: "password",
database: "squarecloud",
ssl: {
ca: cert,
key: cert,
cert: cert
}
});
export default drizzle({client: connection, schema});

Actualizado el: 13/06/2026

¿Este artículo te resultó útil?

Comparte tu opinión

Cancelar

¡Gracias!