Exportar datos desde Cloud SQL

En esta página se explica cómo exportar datos de Cloud SQL a Cloud Storage. Después, puedes descargar los datos desde Cloud Storage a tu entorno local para poder tener acceso local a ellos.

Para conocer las prácticas recomendadas para exportar datos, consulta el artículo sobre las prácticas recomendadas para importar y exportar datos.

Exportar datos a un archivo de volcado de SQL

Para exportar desde Cloud SQL usa la utilidad pg_dump. También puedes ejecutar pg_dump manualmente con las opciones que elijas.

Consola

  1. Visita la página de instancias de Cloud SQL en la consola de Google Cloud Platform.

    Ir a la página de instancias de Cloud SQL

  2. Haz clic en el nombre de la instancia desde la que vas a exportar datos para abrir su página de detalles.
  3. Haz clic en Exportar, en la barra de botones.
  4. En Archivo de Cloud Storage, selecciona un segmento o una carpeta de Cloud Storage para la exportación.
  5. En el campo Nombre, ponle un nombre al archivo de exportación y haz clic en Seleccionar.
  6. Introduce el nombre de la base de datos que vas a exportar.
  7. Haz clic en Exportar para iniciar la exportación.

gcloud

Para exportar un archivo de volcado desde una instancia en un segmento de Cloud Storage, efectúa los pasos siguientes:

  1. Crea un segmento para la exportación:
    gsutil mb -p [PROJECT_NAME] -l [LOCATION_NAME] gs://[BUCKET_NAME]
    

    Aunque este paso no es obligatorio, se recomienda efectuarlo para no tener que abrir acceso a otros datos.

  2. Describe la instancia desde la que vas a exportar:
    gcloud sql instances describe [INSTANCE_NAME]
    
  3. Copia el campo serviceAccountEmailAddress.
  4. Añade la cuenta de servicio a la LCA del segmento con la función de escritor:
    gsutil acl ch -u [SERVICE_ACCOUNT_ADDRESS]:W gs://[BUCKET_NAME]
    
  5. Exporta la base de datos:
    gcloud sql instances export [INSTANCE_NAME] gs://[BUCKET_NAME]/sqldumpfile.gz \
                                --database [DATABASE_NAME]
    

    Para obtener más información sobre el uso del comando de exportación, consulta la página de referencia del comando sql instances export.

  6. Si no necesitas conservar los permisos proporcionados por la LCA y que has establecido con anterioridad, elimina la LCA:
    gsutil acl ch -d [SERVICE_ACCOUNT_ADDRESS] gs://[BUCKET_NAME]
    

cURL

  1. Crea un segmento para la exportación:
    gsutil mb -p [PROJECT_NAME] -l [LOCATION_NAME] gs://[BUCKET_NAME]
    

    Aunque este paso no es obligatorio, se recomienda efectuarlo para no tener que abrir acceso a otros datos.

  2. Proporciona permisos de escritura en el segmento a tu instancia.

    Consulta el artículo sobre la creación de LCAs si necesitas ayuda para establecerla.

  3. Exporta tu base de datos:
    ACCESS_TOKEN="$(gcloud auth application-default print-access-token)"
    curl --header "Authorization: Bearer ${ACCESS_TOKEN}" \
         --header 'Content-Type: application/json' \
         --data '{"exportContext":
                    {"fileType": "SQL",
                     "uri": "gs://<BUCKET_NAME>/<PATH_TO_DUMP_FILE>",
                     "databases": ["<DATABASE_NAME1>", "<DATABASE_NAME2>"] }}' \
       -X POST \
       https://www.googleapis.com/sql/v1beta4/projects/[PROJECT-ID]/instances/[INSTANCE_NAME]/export
    
  4. Si no necesitas conservar los permisos proporcionados por la LCA y que has establecido con anterioridad, elimina la LCA.
Para ver la lista completa de parámetros de esta petición, accede a la página instances:export.

Siguientes pasos