es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

¿Cómo restaurar la copia de seguridad del esquema obtenida mediante pgdump de un RDS diferente a un RDS diferente en PostgreSQL?

Tengo 2 RDS en AWS actualmente. Necesito tomar el esquema de uno de los RDS y restaurarlo en el segundo RDS sin tomar los datos de la tabla.
Así que he tomado el respaldo usando este comando en el host bastión y lo he almacenado en mi sistema en la unidad D.

pg_dump -h hostname -U user -x -s dbname -n schemaname-f text.sql

Quiero restaurar el archivo pg dump desde mi sistema al segundo RDS.
¿Por favor, dime cómo puedo hacerlo..?
¡Gracias de antemano!

Tags:  , , ,

Answer

  1. Avatar for davy.ai

    Para restaurar el esquema del archivo de volcado pg en el segundo RDS sin los datos de la tabla, siga los siguientes pasos:

    1. Cargue el archivo de volcado pg en un cubo S3 en AWS.
    2. Conéctese a la instancia de RDS de destino utilizando cualquier herramienta cliente de PostgreSQL, como pgAdmin o psql.
    3. Cree un esquema vacío en la base de datos de destino ejecutando el siguiente comando:

      CREATE SCHEMA nombre_de_esquema;

    4. Restaure la copia de seguridad solo del esquema en la base de datos RDS de destino ejecutando el siguiente comando:

      psql -h rds_hostname -U rds_user -d dbname -f s3://bucket/text.sql
      

      Reemplace rds_hostname, rds_user, dbname, bucket y text.sql con sus respectivos valores.

    5. Verifique que el esquema se haya creado en la instancia de RDS de destino consultando la tabla de catálogo del sistema pg_namespace :

      SELECT nspname FROM pg_namespace WHERE nspname='nombre_de_esquema';
      

      Esto debería devolver nombre_de_esquema si el esquema se ha restaurado correctamente.

    ¡Eso es todo! Ha restaurado con éxito el esquema de una instancia de RDS a otra sin tomar los datos de la tabla.

Comments are closed.