#!/bin/bash # Script para crear usuario y base de datos PostgreSQL # Ejecutar: bash crear-usuario-y-bd.sh echo "🔧 Creando usuario y base de datos PostgreSQL..." echo "" # Copiar SQL a /tmp para que postgres pueda acceder cat > /tmp/create-user-emerges.sql << 'SQL' -- Crear usuario si no existe DO $$ BEGIN IF NOT EXISTS (SELECT FROM pg_user WHERE usename = 'planetazuzu') THEN CREATE USER planetazuzu WITH PASSWORD 'Monforte.1977'; RAISE NOTICE 'Usuario planetazuzu creado'; ELSE RAISE NOTICE 'Usuario planetazuzu ya existe'; ALTER USER planetazuzu WITH PASSWORD 'Monforte.1977'; END IF; END $$; -- Crear base de datos si no existe SELECT 'CREATE DATABASE emerges_tes OWNER planetazuzu' WHERE NOT EXISTS (SELECT FROM pg_database WHERE datname = 'emerges_tes')\gexec -- Dar permisos GRANT ALL PRIVILEGES ON DATABASE emerges_tes TO planetazuzu; -- Conectar a la base de datos y dar permisos en el esquema \c emerges_tes -- Crear esquema si no existe CREATE SCHEMA IF NOT EXISTS emerges_content; -- Dar permisos en el esquema GRANT ALL ON SCHEMA emerges_content TO planetazuzu; ALTER DEFAULT PRIVILEGES IN SCHEMA emerges_content GRANT ALL ON TABLES TO planetazuzu; ALTER DEFAULT PRIVILEGES IN SCHEMA emerges_content GRANT ALL ON SEQUENCES TO planetazuzu; \q SQL # Ejecutar con sudo echo "Ejecutando SQL (requiere contraseña de sudo)..." sudo -u postgres psql -f /tmp/create-user-emerges.sql # Limpiar rm -f /tmp/create-user-emerges.sql echo "" echo "✅ Proceso completado" echo "" echo "Verificar con: cd backend && npm run verify"