J'ai un serveur de production qui exécute une application qui utilise CouchDB comme base de données principale. Je voudrais configurer un serveur de transfert qui possède une instance CouchDB que je peux toujours synchroniser avec l'instance de production et obtenir une copie propre.Configuration du stockage intermédiaire avec couchdb
Une solution naïve consiste simplement à faire en sorte que le serveur de transfert répète en continu la base de données du serveur de production, et l'utilise simplement. Le problème est bien sûr que lors des tests sur le serveur de transfert, je peux faire des choses qui modifient la base de données.
Fonctionnellement correct serait pour moi de supprimer la base de données à chaque fois et de reproduire à partir de la production; mais, évidemment, cela prendrait un temps considérable si je devais recommencer à zéro à chaque fois. Je cherche une solution quelque chose comme: 1) Conserver une copie vierge de la production db sur le serveur de transit, qui réindexe constamment ses vues 2) copier tous les fichiers db, y compris les index à un db nommé quelque chose 3) utilisez-le et soufflez-le quand vous avez terminé.
Est-ce que quelqu'un a déjà essayé quelque chose comme ça et Est-ce que copier des fichiers db et les renommer fonctionne même sans problème? Si oui, quels fichiers ont besoin d'être copiés?
Merci. Je suis content que ce soit aussi facile que de copier des fichiers. –
J'ai essayé ceci et je reçois {"erreur": "tuer", "raison": "{gen_server, appel, \ n [serveur_serveur, \ n {ouvrir, << \" cchq-staging \ ">>, \ n [{user_ctx, \ n {user_ctx, <<\"admin\">>, \ n "\", \ n << \ "{couch_httpd_auth, default_authentication_handler} \" >>}}}, \ n infini]} "} –
Lors de l'accès à http : // admin: ****** @ localhost: 5984/{copied_db /. Accéder à la db originale fonctionne. J'ai essayé de le faire avec et sans le {copied_db} déjà existant et le résultat est le même. Tous les autres fichiers qui doivent être copiés? –