Documentation · Guides

Bases de données Postgres.

Chaque projet peut avoir sa propre base Postgres isolée — sa base, son rôle, inaccessible aux autres locataires. Un clic pour provisionner; la chaîne de connexion arrive comme DATABASE_URL.

Provisionnement

Ouvrez l’onglet Base de données de votre projet et provisionnez. Vous obtenez une base et un rôle dédiés, et le DSN est injecté dans votre application comme DATABASE_URL au prochain déploiement. Les détails complets de connexion (hôte, port, utilisateur, mot de passe) restent visibles sur l’onglet pour vos outils externes. La taille de la base est plafonnée par forfait (voir les limites).

import pg from 'pg';

// DATABASE_URL is injected automatically once a database is provisioned.
const pool = new pg.Pool({ connectionString: process.env.DATABASE_URL });

const { rows } = await pool.query('SELECT now()');

Version de Postgres

Au moment de provisionner, choisissez Postgres 17 (par défaut) ou Postgres 18. L’onglet Base de données affiche la version exacte en exécution — par exemple, 17.9 — pas seulement la version majeure. Une base existante reste sur sa version de création; rien ne change à moins que vous ne le choisissiez.

Pour faire passer une base existante à une autre version, videz-la et restaurez-la dans une base fraîchement provisionnée (pg_dump depuis l’ancienne, pg_restore dans la nouvelle). Votre DATABASE_URL est réinjectée au prochain déploiement.

Migrations et amorçage

Exécutez vos migrations comme partout ailleurs : dans votre script build (prisma migrate deploy, drizzle-kit push, knex migrate:latest) ou au démarrage de l’application. La base est joignable pendant les builds, donc les migrations au build fonctionnent.

Connexion de l’extérieur

Les détails de connexion de l’onglet Base de données fonctionnent depuis des clients externes (psql, TablePlus, le studio de votre ORM). Les données restent sur une infrastructure canadienne — la même posture de souveraineté que votre application.

Analytique sur vos données

Les bases de projet apparaissent comme source dans l’Atelier de données : parcourez les tables et exécutez du SQL depuis le tableau de bord. Pour lire ou écrire dans votre base selon une planification — cumuls nocturnes, rapprochements, transferts entre projets — utilisez les requêtes SQL planifiées.

Sauvegardes

Les bases de la plateforme sont sauvegardées chaque nuit. Pour une ceinture et des bretelles sur des données critiques, pg_dump avec votre chaîne de connexion fonctionne de n’importe où.