Quiero restaurar un volcado de base de datos muy grande directamente desde un objeto de almacenamiento en la nube de Google sin tener que descargarlo y guardarlo en un archivo local, debido a la limitación de espacio en disco.
Tengo los volcados de base de datos producidos por mongodump (con y sin --gzip )
Cuando trato de canalizar los datos de volcado de la base de datos a mongorestore usando el siguiente comando (me referí a Streaming transfers )
gsutil cp - gs://<bucket>/<object_path> | mongorestore --uri=<connection_uri> --archiveEl proceso está atascado en la siguiente salida.
Copying from <STDIN>... / [0 files][ 0.0 B/ 0.0 B] No estoy seguro de si es un problema de gsutil o mongorestore
El archivo es un archivo mongodump válido, ya que intenté descargar un pequeño volcado de base de datos y pude restaurarlo con éxito usando mongorestore --uri=<connection_uri> --archive=<local_file_path>
versión gsutil: 4.57
mongorestore versión: 100.2.0
El guión en su comando gsutil está en el lugar del argumento fuente, no en el destino, por lo que está intentando copiar desde STDIN a la ruta gs:// (¡lo que sobrescribiría su objeto!).
Si desea canalizar el contenido de su objeto GCS a otro programa, puede usar gsutil cp y hacer que el argumento de destino sea el carácter de guión, o más simplemente, simplemente use gsutil cat gs://...