import { drizzle } from "drizzle-orm/mysql2"; import type { MySql2Database } from "drizzle-orm/mysql2"; import mysql from "mysql2/promise"; import { env } from "./env.js"; let pool: mysql.Pool | null = null; export function getDb(): MySql2Database { if (!pool) { pool = mysql.createPool({ uri: env.DATABASE_URL, waitForConnections: true, connectionLimit: 10, queueLimit: 0, }); } return drizzle(pool); } export async function closeDb(): Promise { if (pool) { await pool.end(); pool = null; } }