Uso de un archivo de copia de seguridad para mover una geodatabase de PostgreSQL a un sitio de ArcGIS Server on Amazon Web Services

Es posible mover una geodatabase corporativa existente de PostgreSQL desde u servidor local a una instancia de ArcGIS Server on Amazon Web Services, o bien de una instancia de ArcGIS Server on Amazon Web Services a otra utilizando un archivo de copia de seguridad.

Para ello, cree una copia de seguridad de la geodatabase de origen, transfiera el archivo de copia de seguridad a la instancia de ArcGIS Server on Amazon Web Services de destino, cree una base de datos y los roles de inicio de sesión en el clúster de base de datos de PostgreSQL y, por último, restablezca la base de datos.

Comprobación de la configuración de variables personalizada

Agregue al nuevo clúster de base de datos todas las opciones de configuración personalizadas que tenía en el clúster de base de datos original y que desee conservar. Las opciones de configuración se guardan en el archivo postgresql.conf. Haga una copia de este archivo y muévalo al clúster de base de datos de destino en la instancia de ArcGIS Server on Amazon Web Services.

Encontrará el archivo postgresql.conf de ArcGIS Server on Amazon Web Services en /data de la unidad montada.

Creación de la copia de seguridad de la geodatabase de origen

Podrá crear una copia de seguridad de la base de datos para transferir los archivos de datos a una instancia de ArcGIS Server on Amazon Web Services.

Utilice la aplicación PostgreSQL pg_dump para crear un archivo de volcado.

Pasos:
  1. Conéctese al servidor en el que esté guardada la geodatabase de origen.
  2. Ejecute el comando pg_dump en la línea de comandos del sistema operativo para crear una copia de seguridad de la base de datos.
    pg_dump -U postgres -F c > /data/spdbbu11012.dump
    

    Consulte en la documentación de PostgreSQL, en http://www.postgresql.org/docs/9.0/static/app-pgdump.html, más información acerca de la aplicación pg_dump.

Transferencia del archivo de copia de seguridad a la instancia de ArcGIS Server on Amazon Web Services de destino

Existen varias maneras de transferir el archivo de comando a la instancia de destino. Consulte las diferentes opciones de movimiento de datos en Estrategias para la transferencia de datos a Amazon. Si fuese necesario, podrá utilizar el mismo método para mover el archivo postgresql.conf.

Asegúrese de colocar el archivo de volcado en el volumen de almacenamiento de bloque elástico (EBS).

Una vez que el archivo de volcado se encuentre en la instancia de ArcGIS Server on Amazon Web Services de destino, prepare el clúster de base de datos de PostgreSQL.

Preparación del clúster de base de datos de PostgreSQL de destino para restaurarlo

Deberá tener una base de datos en la cual restaurar el archivo de volcado. Además, en el clúster de la base de datos de destino deberán existir los roles de inicio de sesión propietarios de los datos de base de datos de origen.

Ubicación del archivo de configuración

Si está utilizando un archivo postgresql.conf personalizado, haga una copia de seguridad del archivo postgresql.conf predeterminado en la instancia de destino, y coloque el archivo personalizado en /data de la unidad montada.

Creación de una base de datos vacía

La base de datos que vaya a crear deberá tener el mismo nombre que la base de datos del clúster de base de datos de PostgreSQL original de la cual haya creado el archivo de volcado. Los nombres de las bases de datos deben ser únicos dentro de un clúster. Esto implica que, si está moviendo bases de datos desde una instancia de ArcGIS Server on Amazon Web Services a otra, debe cumplirse uno de los siguientes requisitos:

  • La base de datos de origen no puede ser una de las bases de datos predeterminada (egdb o de geodatos).

    o bien,

  • Deberá borrar la base de datos predeterminada del mismo nombre del clúster de base de datos de PostgreSQL destino para poder restaurar el archivo de copia de seguridad transferido.

Pasos:
  1. Inicie una sesión en la instancia de ArcGIS Server on Amazon Web Services de destino como usuario raíz.
  2. Abra una línea de comandos e inicie una sesión de psql como usuario sde.
  3. Cree una base de datos en la cual restaurar el archivo de volcado.

    Tenga en cuenta lo siguiente:

    • El nombre, propietario y codificación de la base de datos de destino deben ser los mismos que los de la base de datos de origen.
    • Si utilizó una plantilla de base de datos no predeterminada para la base de datos de origen, como la plantilla de base de datos de PostGIS, utilice la misma plantilla para la base de datos de destino.
    • Podrá guardar la nueva base de datos en un espacio de tabla existente, o bien crear un espacio nuevo específicamente para esta base de datos. Si desea utilizar un nuevo espacio de tabla, deberá crearlo antes de crear la base de datos.

    CREATE DATABASE <dbname>
      WITH OWNER = sde
           TEMPLATE = template0
           ENCODING = '<encoding of db>'
           TABLESPACE = 
           LC_COLLATE = ''
           LC_CTYPE = ''
           CONNECTION LIMIT = -1;
    

Creación de roles de inicio de sesión y de grupo

El clúster de base de datos de destino debe contener los roles de inicio de sesión de cada usuario propietario de datos de la base de datos de origen.

Si va a mover una base de datos desde una instancia de ArcGIS Server on Amazon Web Services a otra y está utilizando los roles de inicio de sesión predeterminado, no necesitará crear nuevos roles en el clúster de base de datos de destino. No obstante, si los datos de la base de datos de origen son propiedad de roles de inicio de sesión no predeterminados, deberá crear los roles de inicio de sesión con los mismos nombres en el clúster de base de datos de PostgreSQL. Del mismo modo, si desea utilizar inicios de sesión de grupo en la base de datos de destino, deberá volver a crearlos y otorgarles roles de inicio de sesión.

Consulte en la documentación de PostgreSQL información más detallada acerca de cómo crear roles de grupo y de inicio de sesión y agregar inicios de sesión a grupos.

Restauración de la base de datos

Utilice la aplicación PostgreSQL pg_restore para restaurar la base de datos.

PrecauciónPrecaución:

Deberá ejecutar el comando pg_restore dos veces: una para restaurar el esquema público (que contiene la tabla del sistema sde_spatial_references), y la segunda para restaurar el resto de los datos. De lo contrario, no se restaurará ninguno de los datos espaciales.

Pasos:
  1. Conéctese a la instancia de ArcGIS Server on Amazon Web Services destino (la misma a la que haya movido el archivo de volcado).
  2. Abra una línea de comandos e inicie una sesión de psql como usuario sde.
  3. Ejecute el comando pg_restore en la línea de comandos del sistema operativo para restaurar el esquema público en la base de datos.

    Para poder ejecutar el comando pg_restore, el usuario sde debe ser un superusuario de PostgreSQL.

    pg_restore -U sde -n public -d spdb /data/spdbbu11012.dump
    Password:
    
  4. Ejecute por segunda vez el comando pg_restore para restaurar la base de datos íntegra.
    pg_restore -U sde -d spdb /data/spdbbu11012.dump
    Password:
    

    Consulte en la documentación de PostgreSQL, en http://www.postgresql.org/docs/9.0/static/app-pgrestore.html, más información acerca de la aplicación pg_restore.

Una vez restaurada la base de datos en el clúster de base de datos de PostgreSQL de destino, asegúrese de que los esquemas y tablas que esperaba estén presentes en la nueva base de datos. Para ello, consulte las vistas de catálogo de PostgreSQL que guardan esta información. Por ejemplo, podría consultar la vista de catálogo pg_tables para ver todas las tablas de la base de datos y el esquema en el que están guardadas.

Configuración de variables en la base de datos

A continuación podrá utilizar la información de variables de la base de datos personalizada, que habrá recogido previamente, para configurar las variables de la nueva base de datos.

Este procedimiento explica cómo agregar y configurar la variable search_path. Este mismo procedimiento básico se utiliza para configurar los valores de las demás variables de la base de datos.

Pasos:
  1. Conéctese a la nueva base de datos desde psql como usuario sde.
  2. En la ventana psql, configure la ruta de búsqueda de la base de datos para que incluya el esquema de sde.

    SET search_path TO "$user",public,sde;
    

Temas relacionados

6/16/2014