Firestore nouvelle base de données - Comment puis-je sauvegarder
Le google firestore service de base de données fournit une sauvegarde?
Si oui, comment faire une sauvegarde de la base de données et comment puis-je restaurer en cas d'erreur?
- C'est un produit bêta pour le moment et n'a pas encore d'un outil de sauvegarde. Ainsi, vous aurez à écrire sur vous-même. Ref: groups.google.com/forum/#!topic/firebase-talk/5r3xeda07ek
Vous devez vous connecter pour publier un commentaire.
Mise à jour en juillet 2018: le Cloud Firestore prend désormais en charge géré importation et l'exportation de données. Voir la documentation pour plus de détails:
https://firebase.google.com/docs/firestore/manage-data/export-import
[Googleurs ici] Pas, pour l'instant, nous ne proposons pas géré de sauvegarde ou d'importation/exportation de services. C'est quelque chose que nous allons certainement offrir à l'avenir, nous n'avons tout simplement pas l'obtenir prêt pour la première version Bêta.
La meilleure façon de sauvegarder le droit maintenant d'écrire votre propre script à l'aide de notre Java/Python/Nœud.js/Go server Sdk, il devrait être assez simple de télécharger tous les documents de chaque collection et de les écrire de retour si besoin.
Mise à jour: Il est maintenant possible de sauvegarder et de restaurer Firebase Firestore l'utilisation de Cloud Firestore réussi à l'exportation et à l'importation de service
Vous faire par:
Créer un Nuage seau de Rangement pour votre projet - Assurez-vous que c'est un régional en nous-central1 ou 2 /multi régional type de seau
Configurer gcloud pour votre projet à l'aide de
gcloud config set project [PROJECT_ID]
EXPORTATION
Exporter tous les en appelant
gcloud alpha firestore export gs://[BUCKET_NAME]
Ou Exporter une collection à l'aide de
gcloud alpha firestore export gs://[BUCKET_NAME] --collection-ids='[COLLECTION_ID_1]','[COLLECTION_ID_2]'
IMPORTATION
Importer tous les en appelant
gcloud alpha firestore import gs://[BUCKET_NAME]/[EXPORT_PREFIX]/
où [BUCKET_NAME] et [EXPORT_PREFIX] point à l'emplacement de vos fichiers d'exportation. Par exemple -
gcloud alpha firestore import gs://exports-bucket/2017-05-25T23:54:39_76544/
Importer une collection spécifique en appelant:
gcloud alpha firestore import --collection-ids='[COLLECTION_ID_1]','[COLLECTION_ID_2]' gs://[BUCKET_NAME]/[EXPORT_PREFIX]/
Toutes les instructions sont disponibles ici:
https://firebase.google.com/docs/firestore/manage-data/export-import
https://www.npmjs.com/package/firestore-backup
Est un outil qui a été créé pour faire juste cela.
(Je n'ai pas de créer, il suffit de l'ajouter ici que les gens vont trouver cette question)
Je suis en utilisant le travail autour afin d'avoir quotidiennement firestore sauvegardes:
J'ai installé ce à l'échelle mondiale: https://www.npmjs.com/package/firestore-backup-restore
J'ai une tâche cron qui ressemble à ceci:
Et mon backup-script.sh ressemble à ceci:
J'ai écrit un outil qui traverse les collections/les documents de la base de données et des exportations, le tout dans un seul fichier json. De Plus, il va importer la même structure (utile pour le clonage/mouvement Firestore bases de données). Il est publié en tant que MNP paquet. N'hésitez pas à essayer et donner de la rétroaction.
https://www.npmjs.com/package/node-firestore-import-export
Une solution à l'aide de Python 2.
Fourche sur https://github.com/RobinManoli/python-firebase-admin-firestore-backup
De la première installation et configuration de Firebase Admin SDK Python: https://firebase.google.com/docs/admin/setup
Puis l'installer dans votre environnement python:
Installer le Firestore module:
(à partir de ImportError: impossible d'importer le Cloud Firestore bibliothèque pour Python)
Code Python
J'ai eu le même problème et a créé un petit package npm qui vous permet de créer une sauvegarde planifiée, avec des Nuages de Fonctions. Il utilise la nouvelle fonctionnalité d'importation/exportation de Firestore.
La caisse de la pleine readme sur la façon de les mettre en place, c'est super simple!