Skip to content
  • Inicio
  • Programación
  • Libros
  • Experiencias
  • Contactar
  • ¿Quién soy?

ISAAC FIGUEROA

Software ABBA insadisa | Análisis de Datos

Exportar BD de Supabase y ponerla en otro Proyecto

Posted on junio 27, 2024junio 27, 2024 isaac By isaac No hay comentarios en Exportar BD de Supabase y ponerla en otro Proyecto

Supongamos que tengo un proyecto en Supabase cuya base de datos se llama Paises, y quiero generar una base de datos Demo de esa misma. Entonces primero tengo que: exportar la base de datos de Paises, luego crear un nuevo proyecto llamado Demo-paises y finalmente importar la Base de datos a demo-paises.

Aquí se explican los pasos de manera detallada:

Pasos:

Instalación de pg_dump

  • Descargar e instalar PostgreSQL desde el sitio oficial: https://www.postgresql.org/download/windows/

Seguir el asistente de instalación, el cual incluye pg_dumpl

Agregar al PATH:

Para agregarla al PATH:

  • Abre el Panel de Control.
  • Ve a Sistema y Seguridad > Sistema > Configuración avanzada del sistema.
  • En la pestaña de «Opciones avanzadas», haz clic en «Variables de entorno».
  • En «Variables del sistema», encuentra la variable Path, selecciónala y haz clic en «Editar».
  • Agrega la ruta completa de la carpeta bin de PostgreSQL (por ejemplo, C:\Program Files\PostgreSQL\<version>\bin).
  • Guarda los cambios y cierra todas las ventanas.

Verificar la instalación:

  • Abre una nueva línea de comandos (cmd).

Ejecuta el comando:

pg_dump --version

Deberías ver la versión de pg_dump, algo como:

pg_dump (PostgreSQL) 13.3<br>

Una vez que tengas pg_dump instalado y verificado, podrás utilizarlo para exportar tu base de datos en Supabase.

EXPORTAR LA BASE DE DATOS DE SUPABASE

Sí, pg_dump crea una copia de seguridad de tu base de datos y la guarda en un archivo en tu sistema local. Este archivo contiene todos los datos y la estructura de la base de datos, permitiendo que puedas restaurar la base de datos en el futuro o moverla a otro servidor. Aquí te explico en detalle cómo funciona:

Cómo Funciona pg_dump

  1. Exportación de la Base de Datos:Cuando ejecutas pg_dump, la herramienta conecta a tu base de datos de PostgreSQL y genera un archivo que contiene todos los comandos SQL necesarios para recrear la base de datos en su estado actual. Este archivo puede incluir:
    • Estructura de la Base de Datos: Tablas, índices, secuencias, vistas, funciones, y otros objetos de la base de datos.
    • Datos: Todos los registros almacenados en las tablas de la base de datos.
    • Configuraciones: Opciones de configuración específicas de la base de datos.
  2. Formato del Archivo:Puedes especificar diferentes formatos para el archivo de salida usando la opción -F de pg_dump:
    • Formato Plain Text (-F p): Un archivo de texto plano que contiene comandos SQL. Este formato es fácil de leer y modificar, pero puede ser más grande que otros formatos.
    • Formato Custom (-F c): Un formato binario específico de pg_dump que puede ser comprimido y permite una restauración más flexible con pg_restore. Este es el formato recomendado para copias de seguridad.
    • Formato Tar (-F t): Un archivo tarball que contiene los datos. Este formato también puede ser restaurado con pg_restore.
    • Formato Directory (-F d): Un directorio que contiene varios archivos, uno por cada tabla. Este formato es útil para bases de datos muy grandes.

Comando pg_dump

El comando general para ejecutar pg_dump es:

pg_dump -U <usuario> -h <host> -p <puerto> -d <nombre_de_la_base_de_datos> -F c -b -v -f <archivo de salida>
  • -U <usuario>: Especifica el nombre de usuario para conectarse a la base de datos.
  • -h <host>: Especifica el host de la base de datos.
  • -p <puerto>: Especifica el puerto de la base de datos.
  • -d <nombre_de_la_base_de_datos>: Especifica el nombre de la base de datos que deseas exportar.
  • -F c: Especifica el formato del archivo de salida como custom.
  • -b: Incluye blobs en el dump.
  • -v: Activa el modo verboso, lo que proporciona más detalles sobre el proceso de exportación.
  • -f <archivo_de_salida>: Especifica el archivo de salida donde se guardará el dump.

Ejemplo de Exportación

Supongamos que tienes las siguientes credenciales para tu base de datos en Supabase:

  • Usuario: your_user
  • Host: db.your-supabase.co
  • Puerto: 5432
  • Base de datos: paises

El comando para exportar la base de datos sería:

pg_dump -U your_user -h db.your-supabase.co -p 5432 -d paises -F c -b -v -f paises_dump.sql

Esto generará un archivo llamado paises_dump.sql en el directorio actual que contiene toda la información de tu base de datos.

CREAR NUEVO PROYECTO PARA PONERLE LA BASE DE DATOS CON pg_restore

Crear el Nuevo Proyecto en Supabase:

  • Ve a tu panel de Supabase.
  • Crea un nuevo proyecto llamado «demo-paises».

Obtener las Credenciales de la Nueva Base de Datos:

  • Una vez creado el nuevo proyecto, obtén los detalles de conexión de la nueva base de datos de manera similar a como lo hiciste para la base de datos «postgres».

Ejecutar pg_restore:

Abre la línea de comandos (cmd) y ejecuta el siguiente comando, reemplazando <usuario>, <host>, <puerto>, <archivo_de_entrada> con los valores apropiados:

pg_restore -U <usuario> -h <host> -p <puerto> -d postgres -v paises_dump.sql

Por ejemplo, si tus credenciales son las siguientes para el nuevo proyecto:

  • Usuario: your_new_user
  • Host: db.new-supabase.co
  • Puerto: 5432
  • Base de datos: postgres

El comando sería:

pg_restore -U your_new_user -h db.new-supabase.co -p 5432 -d postgres -v paises_dump.sql

RESUMEN

  1. Exportar la Base de Datos: Usa pg_dump para crear una copia de seguridad de tu base de datos «postgres» en Supabase.
  2. Crear Nuevo Proyecto: Crea un nuevo proyecto en Supabase.
  3. Restaurar la Base de Datos: Usa pg_restore para importar la base de datos en el nuevo proyecto.

Siguiendo estos pasos, podrás exportar e importar tu base de datos de Supabase con todas sus tablas y configuraciones intactas.

Hacer Dump de Estructura Sin Datos

Para realizar un dump de solo la estructura de la base de datos (sin datos), puedes usar la opción -s o --schema-only en el comando pg_dump. Esto asegurará que solo se exporten los comandos SQL necesarios para crear la estructura de la base de datos, excluyendo cualquier inserción de datos.

Ejemplo de Comando

El comando básico sería similar al que usaste anteriormente, pero agregando la opción -s:

pg_dump -U <usuario> -h <host> -p <puerto> -d <nombre_de_la_base_de_datos> -s -F c -v -f estructura_dump.sql<br><code><br></code>
  • -s o --schema-only: Exporta solo la estructura de la base de datos, sin incluir datos.
  • -F c: Especifica el formato del archivo de salida como custom.
  • -v: Activa el modo verboso para obtener más detalles durante la operación.
  • -f <archivo_de_salida>: Especifica el nombre y la ubicación del archivo de salida.

Ejemplo Práctico

Supongamos que deseas hacer un dump de solo la estructura de la base de datos paises en tu proyecto de Supabase:

pg_dump -U your_user -h db.your-supabase.co -p 5432 -d paises -s -F c -v -f estructura_paises.sql

Este comando creará un archivo estructura_paises.sql en el directorio actual que contiene solo los comandos SQL para crear la estructura de la base de datos paises, excluyendo cualquier dato almacenado en las tablas.

Restaurar desde un Dump de Estructura

Para restaurar la base de datos usando un archivo de dump que contiene solo la estructura, puedes seguir los mismos pasos que mencioné anteriormente para pg_restore. La diferencia clave es que este dump no contendrá datos, por lo que la restauración creará la estructura vacía de la base de datos sin ningún contenido.

Consideraciones Adicionales

  • Índices y Restricciones: Aunque el dump de solo estructura no incluye datos, sí incluirá índices y restricciones definidas en la base de datos original.
  • Compatibilidad: Asegúrate de que el archivo de dump generado sea compatible con la versión de PostgreSQL que estás usando para la restauración.

Con esto, deberías poder crear y restaurar dumps de solo estructura de tu base de datos PostgreSQL en Supabase según sea necesario.

Programación, sql Tags:supabase

Navegación de entradas

Previous Post: Creación Nuevo Proyecto y Sincronizarlo con GitHub
Next Post: Crear un nuevo proyecto en React con npx create-react-app

Deja una respuesta Cancelar la respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Categorías

  • Experiencias
  • javascript
  • Libros
  • pandas
  • Programación
  • python
  • sql
  • VBA

Entradas recientes

  • Subir cambios a GitHub
  • Crear un nuevo proyecto en React con npx create-react-app
  • Exportar BD de Supabase y ponerla en otro Proyecto

Copyright © 2024 ISAAC FIGUEROA GUERRERO