From 1c96b696fa4cfa97a8853674c9d1583a29c18aab Mon Sep 17 00:00:00 2001 From: josedario87 Date: Sat, 22 Nov 2025 04:34:24 -0600 Subject: [PATCH] Revertir cambios en export, mantener solo mejoras en import MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit El import ahora funciona correctamente gracias a la limpieza de SQL que remueve comandos incompatibles. Los flags adicionales de pg_dump no son necesarios y pueden causar problemas. Cambios: - Revertir pg_dump a su forma original con solo: --clean --if-exists --no-owner --no-acl - Mantener todas las mejoras en import-database.post.ts El ciclo funciona así: 1. Export genera SQL estándar con pg_dump 2. Import limpia automáticamente comandos incompatibles 3. Import ejecuta con psql correctamente --- nuxt4/server/api/debug/export-database.post.ts | 12 +++--------- 1 file changed, 3 insertions(+), 9 deletions(-) diff --git a/nuxt4/server/api/debug/export-database.post.ts b/nuxt4/server/api/debug/export-database.post.ts index 0f3df7b..eb4d29b 100644 --- a/nuxt4/server/api/debug/export-database.post.ts +++ b/nuxt4/server/api/debug/export-database.post.ts @@ -55,15 +55,9 @@ export default defineEventHandler(async (event) => { const timestamp = new Date().toISOString().replace(/[:.]/g, '-').slice(0, -5) const filename = `backup-seguidordelotes-${timestamp}.sql` - // Ejecutar pg_dump con opciones para máxima compatibilidad - // --clean: incluir DROP antes de CREATE - // --if-exists: usar IF EXISTS en los DROP - // --no-owner: no incluir comandos de ownership - // --no-acl: no incluir permisos - // --no-tablespaces: no incluir tablespaces - // --no-security-labels: no incluir security labels - // --no-synchronized-snapshots: no usar snapshots sincronizados - const command = `PGPASSWORD="${password}" pg_dump -h ${host} -p ${port} -U ${user} -d ${database} --clean --if-exists --no-owner --no-acl --no-tablespaces --no-security-labels --no-synchronized-snapshots` + // Ejecutar pg_dump + // Usar PGPASSWORD en la variable de entorno para evitar prompt de contraseña + const command = `PGPASSWORD="${password}" pg_dump -h ${host} -p ${port} -U ${user} -d ${database} --clean --if-exists --no-owner --no-acl` console.log(' - Ejecutando pg_dump...') const { stdout, stderr } = await execAsync(command, {