उसी जगह पर डेटा वापस लाएं

इस पेज पर, बैकअप में मौजूद डेटा को उस डेटाबेस में वापस लाने का तरीका बताया गया है जिसका नाम, बैकअप के सोर्स डेटाबेस के नाम जैसा है. इस पेज को पढ़ने से पहले, आपको डेटा का बैक अप लेने और उसे वापस लाने के बारे में जानकारी होनी चाहिए.

मौजूदा जगह पर डेटा वापस लाना

इन-प्लेस रीस्टोर की सुविधा की मदद से, किसी डेटाबेस को बैकअप से उस सोर्स डेटाबेस में वापस लाया जा सकता है जिसने बैकअप बनाया था. इस दौरान, ओरिजनल डेटाबेस मौजूद रहता है. डेटा को उसी जगह पर वापस लाने से, आपको ट्रैफ़िक को फिर से रूट करने या किसी दूसरे नाम से डेटाबेस बनाने की ज़रूरत नहीं पड़ती.

डेटा को पहले जैसा करने के लिए, ऐसे डेस्टिनेशन डेटाबेस का इस्तेमाल करना होगा जो पहले से मौजूद न हो. हालांकि, सोर्स डेटाबेस को मिटाकर और फिर बैकअप से सोर्स डेटाबेस के नाम वाले नए डेटाबेस में डेटा वापस लाकर, इन-प्लेस रीस्टोर की प्रोसेस को पूरा किया जा सकता है.

एक ही जगह पर डेटा वापस लाना

मौजूदा जगह पर डेटा वापस लाने के लिए, यह तरीका अपनाएं:

  1. डेटा वापस लाने के लिए, बैकअप की पहचान करें.
  2. मौजूदा डेटाबेस मिटाएं.
  3. डेटा वापस लाने की प्रोसेस पूरी करने के लिए, मिटाए गए डेटाबेस के बैकअप और डेटाबेस आईडी का इस्तेमाल करें.
चेतावनी: अगर आपका ऐप्लिकेशन, नेटिव मोड वाली क्लाइंट लाइब्रेरी में Cloud Firestore का इस्तेमाल करता है और आपके क्लाइंट ऑफ़लाइन कैश मेमोरी का इस्तेमाल करते हैं, तो हो सकता है कि इन-प्लेस रीस्टोर करने पर, लिखे गए डेटा को मिटाने के बजाय, उसे रीस्टोर किए गए डेटाबेस में सेव कर दिया जाए. ऐसा तब हो सकता है, जब मिटाए गए डेटाबेस से कनेक्ट किया गया क्लाइंट ऑफ़लाइन हो जाता है. साथ ही, ऑफ़लाइन होने के दौरान, कैश मेमोरी में उस समय के राइट इकट्ठा हो जाते हैं जब आपको इन-प्लेस रीस्टोर करना होता है.

शुरू करने से पहले

हमारा सुझाव है कि डेटा को उसी जगह पर वापस लाने की प्रोसेस शुरू करने से पहले, नीचे दिए गए चरण पूरे करें.

अपने डेटाबेस के इंडेक्स कॉन्फ़िगरेशन को वापस पाएं और उसे कॉपी करें. इन-प्लेस रीस्टोर ऑपरेशन पूरा होने के बाद, इंडेक्स फिर से बनाने के लिए इंडेक्स कॉन्फ़िगरेशन का इस्तेमाल करें. अपने डेटाबेस के इंडेक्स कॉन्फ़िगरेशन को वापस पाने के लिए, इन निर्देशों का इस्तेमाल करें:

  • कंपोज़िट इंडेक्स की सूची वापस पाने के लिए, gcloud firestore indexes composite list का इस्तेमाल करें:

        gcloud firestore indexes composite list --database=DATABASE_ID
    

    DATABASE_ID की जगह अपने डेटाबेस का आईडी डालें.

  • एक फ़ील्ड वाले (बिल्ट-इन) इंडेक्स के लिए छूट की सूची वापस पाने के लिए, gcloud firestore indexes fields list का इस्तेमाल करें.

        gcloud firestore indexes fields list --database=DATABASE_ID
    

एक ही जगह पर डेटा वापस लाना

मौजूदा जगह पर डेटा वापस लाने के लिए, यह तरीका अपनाएं. इस प्रोसेस के दौरान, डेटाबेस मिटाने और उसे वापस लाने की प्रोसेस पूरी होने के बीच कुछ समय के लिए डेटाबेस का इस्तेमाल नहीं किया जा सकता.

डेटा वापस लाने की प्रोसेस शुरू होने के बाद, इसे रद्द नहीं किया जा सकता. आपको इस प्रोसेस के पूरा होने तक इंतज़ार करना होगा. डेटाबेस को वापस लाने की प्रोसेस में, उस डेटाबेस आईडी का इस्तेमाल किया जाता है जिसका इस्तेमाल प्रोसेस में किया गया था.

  1. रिस्टोर करने की कार्रवाई के लिए, इस्तेमाल किए जाने वाले बैकअप की पहचान करने के लिए, gcloud firestore backups list कमांड का इस्तेमाल करें. साथ ही, रिसॉर्स का नाम नोट करें. संसाधन का नाम इस फ़ॉर्मैट में होता है:

        projects/PROJECT_ID/locations/LOCATION/backups/BACKUP_ID
    
  2. मौजूदा डेटाबेस को मिटाने के लिए, gcloud firestore databases delete कमांड का इस्तेमाल करें:

        gcloud firestore databases delete --database='DATABASE_ID'
    

    DATABASE_ID को डेटाबेस आईडी से बदलें.

  3. डेटाबेस मिटाने के बाद, डेटाबेस आईडी को फिर से उपलब्ध होने में कम से कम पांच मिनट लगते हैं. gcloud firestore databases restore कमांड का इस्तेमाल करके, डेटा वापस लाने की प्रोसेस शुरू करें:

    gcloud firestore databases restore \
    --source-backup=projects/PROJECT_ID/locations/LOCATION/backups/BACKUP_ID \
    --destination-database='DATABASE_ID'
    

    DATABASE_ID को डेटाबेस आईडी से बदलें.

आगे क्या करना है