इस पेज पर Cloud Firestore बनाने, अपडेट करने, और मिटाने का तरीका बताया गया है डेटाबेस. हर डेटाबेस में एक से ज़्यादा Cloud Firestore डेटाबेस बनाए जा सकते हैं प्रोजेक्ट. प्रोडक्शन और टेस्टिंग को सेट अप करने के लिए, एक से ज़्यादा डेटाबेस का इस्तेमाल किया जा सकता है ताकि डेटा को अलग किया जा सके, और डेटा को क्षेत्र के हिसाब से प्रोसेस किया जा सके.
(default)
डेटाबेस
अगर आपके ऐप्लिकेशन को एक से ज़्यादा डेटाबेस की ज़रूरत नहीं है, तो (default)
डेटाबेस का इस्तेमाल करें.
अगर किसी डेटाबेस की जानकारी नहीं दी जाती है, तो Cloud Firestore क्लाइंट लाइब्रेरी
और Google Cloud सीएलआई, डिफ़ॉल्ट रूप से (default)
डेटाबेस से कनेक्ट होता है.
(default)
डेटाबेस के साथ.
ज़रूरी भूमिकाएं
डेटाबेस बनाने और मैनेज करने के लिए, आपके पास Owner
या Datastore Owner
होना चाहिए
पहचान और ऐक्सेस मैनेजमेंट की भूमिका. ये भूमिकाएं ज़रूरी अनुमतियां देती हैं.
ज़रूरी अनुमतियां
डेटाबेस मैनेज करने के लिए, आपके पास इन अनुमतियों की ज़रूरत होती है:
- डेटाबेस बनाएं:
datastore.databases.create
- डेटाबेस कॉन्फ़िगरेशन पढ़ें:
datastore.databases.getMetadata
- डेटाबेस को कॉन्फ़िगर करें:
datastore.databases.update
- डेटाबेस मिटाएं:
datastore.databases.delete
डेटाबेस बनाना
डेटाबेस बनाने के लिए, इनमें से किसी एक तरीके का इस्तेमाल करें:
कंसोल
-
Firebase कंसोल में, फ़ायरस्टोर डेटाबेस पेज पर जाएं.
- अगर यह आपका पहला नाम डेटाबेस है, तो डेटाबेस जोड़ें पर क्लिक करें.
- अगर ऐसा नहीं है, तो (डिफ़ॉल्ट) पर क्लिक करें. इसके बाद, डेटाबेस जोड़ें पर क्लिक करें.
- अपना डेटाबेस कॉन्फ़िगर करें. डेटाबेस आईडी डालें. कोई जगह चुनें. डेटाबेस बनाएं पर क्लिक करें.
gcloud
इसका इस्तेमाल करें
gcloud firestore databases create
आदेश.
gcloud firestore databases create \ --database=DATABASE_ID \ --location=LOCATION \ --type=DATABASE_TYPE \ [--delete-protection]
इन्हें बदलें:
- DATABASE_ID: मान्य डेटाबेस आईडी.
- LOCATION: एक Cloud Firestore बहु-क्षेत्रीय या क्षेत्र है.
- DATABASE_TYPE: नेटिव मोड के लिए
firestore-native
या Datastore मोड के लिए datastore-mode.
मिटाने से जुड़ी सुरक्षा चालू करने के लिए, --delete-protection
एक वैकल्पिक फ़्लैग है.
जिस डेटाबेस को मिटाने से जुड़ी सुरक्षा चालू है उसे तब तक नहीं मिटाया जा सकता, जब तक कि
तो यह सेटिंग बंद करें. यह सेटिंग डिफ़ॉल्ट रूप से अक्षम होती है.
Firebase CLI
firebase firestore:databases:create DATABASE_ID \ --location=LOCATION \ [--delete-protection DELETE_PROTECTION_ENABLEMENT]
इन्हें बदलें:
- DATABASE_ID: मान्य डेटाबेस आईडी.
- LOCATION: Cloud Firestore एक से ज़्यादा इलाके या इलाका.
- DELETE_PROTECTION_ENABLEMENT:
ENABLED
याDISABLED
.
बनाया गया डेटाबेस, हमेशा Firestore नेटिव मोड में होता है.
--delete-protection
का इस्तेमाल करना ज़रूरी नहीं है
तर्क को मिटाएं. आप इस डेटाबेस को नहीं मिटा सकते
मिटाने से जुड़ी सुरक्षा तब तक चालू रहती है, जब तक आप इस सेटिंग को बंद नहीं कर देते. यह सेटिंग
डिफ़ॉल्ट रूप से बंद रहता है.
Terraform
resource "google_firestore_database" "database" { project = "project-id" name = DATABASE_ID location_id = LOCATION type = DATABASE_TYPE // Optional delete_protection_state = DELETE_PROTECTION_STATE }
इन्हें बदलें:
- DATABASE_ID: मान्य डेटाबेस आईडी.
- LOCATION: Cloud Firestore एक से ज़्यादा इलाके या इलाका.
- DATABASE_TYPE: नेटिव मोड के लिए
FIRESTORE_NATIVE
या डेटास्टोर मोड के लिएDATASTORE_MODE
. - DELETE_PROTECTION_ENABLEMENT: या तो
DELETE_PROTECTION_ENABLED
याDELETE_PROTECTION_DISABLED
.
delete_protection_state
, डेटा मिटाने की सुविधा चालू करने का वैकल्पिक तर्क है
सुरक्षा. ऐसे डेटाबेस को मिटाया नहीं जा सकता जिसमें मिटाने से जुड़ी सुरक्षा चालू हो
जब तक आप इस सेटिंग को अक्षम न कर दें. यह सेटिंग डिफ़ॉल्ट रूप से अक्षम होती है.
डेटाबेस आईडी
मान्य डेटाबेस आईडी में (default)
और वे आईडी शामिल होते हैं जो
फ़ॉलो किया जा रहा है:
- इसमें सिर्फ़ अक्षर, नंबर, और हाइफ़न (
-
) वर्ण शामिल होते हैं. - अक्षर अंग्रेज़ी के छोटे अक्षरों में होने चाहिए.
- पहला वर्ण एक अक्षर होना चाहिए.
- आखिरी वर्ण कोई अक्षर या संख्या होनी चाहिए.
- कम से कम चार वर्ण.
- ज़्यादा से ज़्यादा 63 वर्ण.
- यूयूआईडी नहीं होना चाहिए या यूयूआईडी से मिलता-जुलता नहीं होना चाहिए. उदाहरण के लिए,
f47ac10b-58cc-0372-8567-0e02b2c3d479
.
किसी डेटाबेस को मिटाने के बाद, उसे पांच मिनट के बाद तुरंत फिर से इस्तेमाल नहीं किया जा सकता.
सुरक्षा प्लान मिटाएं
डेटाबेस को गलती से मिटाए जाने से रोकने के लिए, 'मिटाएं' सुरक्षा का इस्तेमाल करें. जिस डेटाबेस में डेटा मिटाने की सुरक्षा चालू है उसे तब तक नहीं मिटाया जा सकता, जब तक आप इसे बंद नहीं कर देते सुरक्षा हटाएं. सुरक्षा मिटाने की सुविधा डिफ़ॉल्ट रूप से बंद होती है. इस सुविधा को चालू किया जा सकता है डेटाबेस बनाते समय सुरक्षा मिटाएं या डेटाबेस कॉन्फ़िगरेशन को अपडेट करके 'सुरक्षा मिटाएं' को चालू करें.
अपने डेटाबेस के लिए Cloud Firestore Security Rules सेट अप करें
अपने हर डिवाइस पर Cloud Firestore Security Rules को डिप्लॉय करने के लिए, Firebase सीएलआई का इस्तेमाल करें डेटाबेस. Cloud Firestore Security Rules को मैनेज और डिप्लॉय करने के लिए गाइड देखें.
क्लाइंट लाइब्रेरी की मदद से, नाम वाले डेटाबेस को ऐक्सेस करना
नाम वाले डेटाबेस में, (default)
नाम से बाहर का कोई भी डेटाबेस होता है. डिफ़ॉल्ट रूप से,
Firebase SDK टूल और Google API क्लाइंट लाइब्रेरी, (default)
से कनेक्ट होती हैं
प्रोजेक्ट में Cloud Firestore डेटाबेस. कनेक्ट किया गया क्लाइंट बनाने के लिए
नाम वाले डेटाबेस में, क्लाइंट इंस्टैंशिएट करते समय डेटाबेस आईडी सेट करें.
डेटाबेस की सूची बनाएं
अपने डेटाबेस को लिस्ट में रखने के लिए, इनमें से किसी एक तरीके का इस्तेमाल करें:
कंसोल
Google Cloud Console में, डेटाबेस पेज पर जाएं.
gcloud
इसका इस्तेमाल करें
gcloud firestore databases list
कमांड का इस्तेमाल करें.
gcloud firestore databases list
Firebase CLI
अपने प्रोजेक्ट के सभी डेटाबेस की सूची बनाने के लिए firebase firestore:databases:list
कमांड का इस्तेमाल करें.
firebase firestore:databases:list
डेटाबेस की जानकारी देखें
किसी एक डेटाबेस की जानकारी देखने के लिए, इनमें से किसी एक तरीके का इस्तेमाल करें:
gcloud
gcloud firestore databases describe
कमांड का इस्तेमाल करें:
gcloud firestore databases describe --database=DATABASE_ID
Firebase CLI
firebase firestore:databases:get
कमांड का इस्तेमाल करें:
firebase firestore:databases:get DATABASE_ID
DATABASE_ID को डेटाबेस आईडी से बदलें.
डेटाबेस कॉन्फ़िगरेशन अपडेट करें
डेटाबेस की कॉन्फ़िगरेशन सेटिंग अपडेट करने के लिए,
gcloud firestore databases update
आदेश.
सुरक्षा मिटाने की सुविधा को चालू या बंद करने के लिए, इस निर्देश का इस्तेमाल करें.
'सुरक्षा मिटाएं' सेटिंग को अपडेट करें
डेटाबेस पर डेटा मिटाने की सुरक्षा चालू करने के लिए,
gcloud firestore databases update
अभी तक किसी भी व्यक्ति ने चेक इन नहीं किया है
आदेश को --delete-protection
फ़्लैग के साथ रखें. उदाहरण के लिए:
gcloud
gcloud firestore databases update --database=DATABASE_ID --delete-protection
DATABASE_ID को डेटाबेस आईडी से बदलें.
डेटाबेस पर सुरक्षा मिटाने की सुविधा को बंद करने के लिए,
gcloud firestore databases update
अभी तक किसी भी व्यक्ति ने चेक इन नहीं किया है
आदेश को --no-delete-protection
फ़्लैग के साथ रखें. उदाहरण के लिए:
gcloud
gcloud firestore databases update --database=DATABASE_ID --no-delete-protection
DATABASE_ID को डेटाबेस आईडी से बदलें.
डेटाबेस को मिटाना
डेटाबेस को मिटाने के लिए, कंसोल या कमांड-लाइन टूल का इस्तेमाल करें.
अगर डेटाबेस में मिटाने की सुरक्षा की सेटिंग चालू है, तो आपको पहले मिटाने की सुरक्षा को बंद करें.
अगर डेटाबेस में App Engine खोज का डेटा है या BLOB इकाइयां, तो आपको पहले वह डेटा हटाना होगा.
डेटाबेस को मिटाने से कोई भी डेटाबेस अपने-आप नहीं मिटता उस डेटाबेस के लिए Eventarc ट्रिगर. कॉन्टेंट बनाने ट्रिगर इवेंट्स डिलीवर करना बंद कर देता है लेकिन जब तक आप ट्रिगर मिटाएं.
कंसोल
-
Firebase कंसोल में, फ़ायरस्टोर डेटाबेस पेज पर जाएं.
- डेटा टैब में, डेटाबेस के लिए डेटा टेबल व्यू के ऊपर, क्लिक करें के बाद, चुनें डेटाबेस मिटाएं.
- डेटाबेस को मिटाने के लिए, निर्देशों का पालन करें.
gcloud
इसका इस्तेमाल करें `gcloud Firestore Databases delete` कमांड इस्तेमाल किया जाएगा.
gcloud firestore databases delete --database=DATABASE_ID
जिस डेटाबेस को मिटाना है उसके आईडी से DATABASE_ID को बदलें.
हर डेटाबेस के ऐक्सेस की अनुमतियां कॉन्फ़िगर करें
इस्तेमाल करने के लिए पहचान और ऐक्सेस मैनेजमेंट की शर्तें का इस्तेमाल करें. नीचे दिए गए उदाहरणों में, शर्तों के साथ ऐक्सेस देने के लिए Google Cloud सीएलआई का इस्तेमाल किया गया है एक या ज़्यादा डेटाबेस. आप यह भी कर सकते हैं Google Cloud Console में IAM की शर्तों को तय करना.
मौजूदा IAM नीतियां देखें
gcloud projects get-iam-policy PROJECT_ID
PROJECT_ID
को अपने प्रोजेक्ट आईडी पर सेट करें.
डेटाबेस का ऐक्सेस दें
gcloud projects add-iam-policy-binding PROJECT_ID \
--member='user:EMAIL' \
--role='roles/datastore.user' \
--condition='expression=resource.name=="projects/PROJECT_ID/databases/DATABASE_ID",title=TITLE,description=DESCRIPTION'
नीचे दी गई चीज़ें सेट करें:
PROJECT_ID
: आपका प्रोजेक्ट आईडीEMAIL
: एक ईमेल पता जो किसी खास Google खाते को दिखाता है. उदाहरण के लिए,alice@example.com
.DATABASE_ID
: डेटाबेस आईडी.TITLE
: एक्सप्रेशन के लिए वैकल्पिक टाइटल.DESCRIPTION
: एक्सप्रेशन की जानकारी देना ज़रूरी नहीं है.
एक डेटाबेस को छोड़कर सभी को ऐक्सेस दें
gcloud projects add-iam-policy-binding PROJECT_ID \
--member='user:EMAIL' \
--role='roles/datastore.user' \
--condition='expression=resource.name!="projects/PROJECT_ID/databases/DATABASE_ID",title=TITLE,description=DESCRIPTION'
नीचे दी गई चीज़ें सेट करें:
PROJECT_ID
: आपका प्रोजेक्ट आईडीEMAIL
: एक ईमेल पता जो किसी खास Google खाते को दिखाता है. उदाहरण के लिए,alice@example.com
.DATABASE_ID
: डेटाबेस आईडी.TITLE
: एक्सप्रेशन के लिए वैकल्पिक टाइटल.DESCRIPTION
: एक्सप्रेशन की जानकारी देना ज़रूरी नहीं है.
किसी सदस्य और भूमिका के लिए नीतियां हटाना
gcloud projects remove-iam-policy-binding PROJECT_ID \
--member='user:EMAIL' \
--role='roles/datastore.user' --all
नीचे दी गई चीज़ें सेट करें:
PROJECT_ID
: आपका प्रोजेक्ट आईडीEMAIL
: एक ईमेल पता जो किसी खास Google खाते को दिखाता है. उदाहरण के लिए,alice@example.com
.
Cloud Monitoring
Cloud Firestore मेट्रिक की रिपोर्ट, मॉनिटर किए गए दो रिसॉर्स के तहत की जाती है.
firestore.googleapis.com/Database
पर जाकर, डेटाबेस लेवल पर एग्रीगेट मेट्रिक की जांच की जा सकती है. firestore_instance
में रिपोर्ट की गई मेट्रिक, प्रोजेक्ट लेवल पर एग्रीगेट की जाती हैं.
सीमाएं
- आपके हर प्रोजेक्ट में ज़्यादा से ज़्यादा 100 डेटाबेस हो सकते हैं. इस सीमा को बढ़ाने का अनुरोध करने के लिए, सहायता टीम से संपर्क किया जा सकता है.
- अगर
(default)
के डेटाबेस में कोई GAE खोज डेटा मौजूद है, तो उसे मिटाया नहीं जा सकता. GAE खोज डेटा मिटाने के लिए, कृपया index delete api का इस्तेमाल करें. अगर आपने हाल ही में GAE Search का डेटा मिटाया है, तो डेटाबेस को मिटाने से पहले आपको इंतज़ार करना पड़ सकता है. - अगर आपके
(default)
डेटाबेस में कोई ब्लॉब इकाई है, तो उसे मिटाया नहीं जा सकता. Blobstore का डेटा मिटाने के लिए, कृपया Blobstore delete api का इस्तेमाल करें. नीचे दी गई GQL क्वेरी चलाकर, यह पता लगाया जा सकता है कि आपके(default)
डेटाबेस में Blobstore का डेटा है या नहीं इसे Google Cloud Console में जाकर देखें:SELECT * FROM __BlobInfo__
. - डेटा मिटाए जाने के पांच मिनट बाद तक, डेटाबेस आईडी का फिर से इस्तेमाल नहीं किया जा सकता.
- Cloud Function v1, Firestore के नाम वाले डेटाबेस के साथ काम नहीं करता. नाम वाले डेटाबेस के लिए इवेंट कॉन्फ़िगर करने के लिए, कृपया Cloud Firestore ट्रिगर (2nd जनरेशन) का इस्तेमाल करें.
- डेटाबेस को मिटाए जाने के बाद, फ़ायरस्टोर फ़ंक्शन ट्रिगर v1 और फ़ायरस्टोर इवेंट ट्रिगर काम करना बंद कर सकते हैं, भले ही उसी नाम से एक नया डेटाबेस बनाया गया हो.