Creé un volcado con mongodump en la computadora A (servidor ubuntu 12.04). Lo moví a la computadora B (servidor ubuntu 12.04) y escribí:
mongorestore -db nombre_bd --drop db_dump_path
Falló e informó:
conectado a: 127.0.0.1
termina llamada después de lanzar una instancia de 'std :: runtime_error'
what (): locale :: facet :: _ S_create_c_locale name not valid
Aborted
He realizado con éxito esta operación antes y este comportamiento extraño nunca ha ocurrido. ¿Qué debo hacer para solucionar este problema?
mongodb
locale
ubuntu-12.04
mongodump
mongorestore
Luca Anceschi
fuente
fuente
En realidad, no está estrictamente relacionado con MongoDB. De alguna manera, el idioma en la computadora B no se definió correctamente. Me las arreglé para solucionarlo escribiendo:
Estos comandos generarán y configurarán las configuraciones regionales necesarias. Después de esos pasos, mongorestore volvió a funcionar como de costumbre.
fuente
/etc/locale.gen
y habilitar las configuraciones regionales necesarias (en arch linux)/etc/locale.gen
y ejecutarlocale-gen
era todo lo que se necesitaba.La exportación
LC_ALL="en_US.UTF-8"
solo funciona si tiene laen_US
configuración regional instalada. Si desea evitar la instalación dellocales
paquete (o su equivalente en distribuciones distintas de las derivadas de Debian), puede utilizar en su lugar:que no requerirá ningún dato local adicional.
fuente
Si utiliza Mac OSX y SSH, es posible que este LC_CTYPE sea incorrecto.
Desarmar la var incorrecta.
Compruebe si la configuración regional funciona bien.
Ahora mongo también debería funcionar bien.
fuente
Para que la corrección sea permanente, puede editar uno de esos archivos:
Y agrega la línea
LC_ALL="en_US.UTF-8"
fuente
Tengo el mismo problema en Debian 7 sin locale-gen (comando no encontrado) instalado.
Resolví de esta manera:
Ahora mongodb debería comenzar.
Fuente
fuente