CouchDB de vidage de fichier et charger à partir du fichier
Je ne peux pas me répliquer entre deux serveurs couchdb, donc je voudrais Dumper à partir d'un serveur et charger à partir du fichier dans l'autre serveur.
j'ai utilisé cette déclaration de vidage et il a bien fonctionné:
curl -X GET http://localhost:5984/<DATABASE_NAME>/_all_docs?include_docs=true > FILE.txt
mais quand j'ai utilisé cette instruction pour charger:
curl -d @FILE.txt -H “Content-Type: application/json” -X POST http://localhost:5984/<DATABASE_NAME>/_bulk_docs
il a échoué comme ceci:
curl: (6) Could not resolve host: application; Host not found {"error":"bad_content_type","reason":"Content-Type must be application/json"}
des idées?
5 réponses
comme dit, vous devriez utiliser le "
et pas “
comme argument du -H
option
si vous utilisez Linux ou MacOSX, vous pouvez utiliser couchdb-dump outil, qui fonctionne essentiellement sur shell bash.
il décharge la base de données sur un fichier local (fichier texte ASCII), formaté comme demandé par http://wiki.apache.org/couchdb/HTTP_Bulk_Document_API
alors vous pouvez le restaurer avec le téléchargement de document en vrac ou avec le outil de restauration couchdb-dump inclus dans le paquet.
C'est le lien vers l'outil: https://github.com/animamea/couchdb-dump
Mais vous pouvez trouver d'autres outils aussi:
vous pouvez utiliser la ligne de commande suivante pour convertir la sortie de la commande curl en structure "docs" que le _bulk_docs
nécessite:
curl -X GET 'http://localhost:5984/mydatabase/_all_docs?include_docs=true' | jq '{"docs": [.rows[].doc]}' | jq 'del(.docs[]._rev)' > db.json
jq est le nom d'une excellente ligne de commande du processeur très utile (c'est à dire dans cette situation).
j'Espère que ça aide.
la raison de votre erreur est que vous utilisez “
au lieu de simples ASCII "
autour de votre -H
argument sur la ligne de commande.
cependant, la vraie solution ici est de simplement copier le <DATABASE_NAME>.couch
le fichier à partir de la /path/to/var/lib/couchdb
répertoire d'un serveur à l'autre.
couchdb-dump
utilitaires couchdb-python projet.
Nolan de L'équipe de PouchDB fabrique de très bons outils. Ceux-ci fonctionneront bien pour décharger et charger à partir de CouchDB (y compris les pièces jointes):
Sauvegarde/Sauvegarde:
https://github.com/nolanlawson/pouchdb-dump-cli
Charger/Restauration: