Firebase CLI एक ऐसा टूल है जिसकी मदद से, कमांड-लाइन से Firebase के प्रॉडक्ट और सेवाओं को मैनेज और कॉन्फ़िगर किया जा सकता है.
सीएलआई में ऐसे निर्देश होते हैं जिनका इस्तेमाल कई तरह के Data Connect टास्क करने के लिए किया जा सकता है. जैसे, नया Data Connect प्रोजेक्ट बनाना, उससे जुड़ी लोकल वर्किंग डायरेक्ट्री को शुरू करना, Data Connect एमुलेटर सेट अप करना, Data Connect संसाधनों की सूची बनाना, क्लाइंट SDK जनरेट करना वगैरह.
सेटअप करने के लिए निर्देश
Data Connect को Firebase प्रोजेक्ट से जोड़ना
firebase init
नया स्थानीय प्रोजेक्ट कॉन्फ़िगरेशन सेट अप करने के लिए, firebase init
का इस्तेमाल करें. यह वर्कफ़्लो, आपकी डायरेक्ट्री में Firebase कॉन्फ़िगरेशन फ़ाइलें बनाता है या अपडेट करता है.
firebase init
firebase init
फ़्लो, सेवा और डेटाबेस को सेट अप करने के साथ-साथ, Data Connect एमुलेटर को इंस्टॉल करने और जनरेट किए गए एसडीके टूल को कॉन्फ़िगर करने में आपकी मदद करता है. हालांकि, ऐसा करना ज़रूरी नहीं है.
सेवा और डेटाबेस का सेटअप
अगर आपने प्रॉडक्ट सेटअप के लिए dataconnect
चुना है, तो सीएलआई आपको नई सेवा का नाम और जगह पूछेगा. साथ ही, यह भी पूछेगा कि आपको 'PostgreSQL के लिए Cloud SQL' के किसी मौजूदा इंस्टेंस को लिंक करना है या नया इंस्टेंस बनाना है.
अगर कोई मौजूदा इंस्टेंस लिंक किया गया है, तो सीएलआई काम करने वाली सेटिंग की जांच करता है. जैसे, आईएएम पुष्टि और सार्वजनिक आईपी पते.
Local Emulator Suite सेटअप
सीएलआई फ़्लो में, Data Connect एम्युलेटर के साथ-साथ एम्युलेटर सेट अप करने का विकल्प भी मिलता है.
Data Connect एम्युलेटर के निर्देश
Data Connect एम्युलेटर शुरू करना
emulators:start/exec
firebase emulators:start/exec
Data Connect एमुलेटर के Local Emulator Suite वर्शन का इस्तेमाल, start
के साथ इंटरैक्टिव मोड में या exec
के साथ स्क्रिप्ट-ड्रिवन, नॉन-इंटरैक्टिव मोड में करें.
स्थानीय PostgreSQL डेटा को एक्सपोर्ट और इंपोर्ट करना
स्थानीय प्रोटोटाइप और टेस्टिंग के साथ-साथ, लगातार इंटिग्रेशन के लिए, किसी लोकल डेटाबेस इंस्टेंस में सेव किए गए डेटा को एक्सपोर्ट किया जा सकता है. साथ ही, उसे डेवलपमेंट के दौरान किए गए बदलावों और टेस्ट रन के बीच इंपोर्ट किया जा सकता है.
एक्सपोर्ट, आपके स्थानीय PostgreSQL डेटाबेस के स्नैपशॉट के तौर पर सेव किए जाते हैं.
Data Connect में, डेटा एक्सपोर्ट/इंपोर्ट करने के तीन तरीके उपलब्ध हैं:
- आपके
firebase.json
में कॉन्फ़िगर किया गया, अपने-आप एक्सपोर्ट/इंपोर्ट होने की सुविधा, ताकि एमुलेटर के बंद होने और चालू होने पर स्नैपशॉट बैकअप मिल सके - सीएलआई का इस्तेमाल करके, मैन्युअल तरीके से डेटा एक्सपोर्ट/इंपोर्ट करना
- VS Code एक्सटेंशन इंटरफ़ेस का इस्तेमाल करके, मैन्युअल तरीके से एक्सपोर्ट/इंपोर्ट करना
आपके firebase.json
में कॉन्फ़िगर किया गया, डेटा अपने-आप एक्सपोर्ट और इंपोर्ट होना
डेवलपमेंट सेशन के बीच डेटा का बैक अप लेने के लिए, firebase init
क्रम के दौरान, अपने-आप बैक अप लेने की जगह तय करें. यह जगह, आपके firebase.json
में emulators.dataconnect.dataDir
फ़ील्ड में सेव होती है. डेटा में किए गए सभी बदलाव, एमुलेटर के चलने के बीच अपने-आप यहां सेव हो जाएंगे. इसलिए, यह लोकल टेस्टिंग और एक्सप्लोरेशन के दौरान काम का है.
मैन्युअल तरीके से एक्सपोर्ट करना: emulators:export
और emulators:start/exec --import
Data Connect एमुलेटर के चलने के दौरान, अपने डेटा का स्नैपशॉट सेव करने के लिए, किसी अलग टर्मिनल में firebase emulators:export
कमांड चलाएं.
इसके बाद, --import
फ़्लैग का इस्तेमाल करके, उस स्नैपशॉट से एमुलेटर को शुरू किया जा सकता है.
# Export data from local emulator from a separate terminal
firebase emulators:export --only dataconnect <export_directory>
# Import data from local directory, here using emulators:exec
firebase emulators:exec ./<your-test-script>.sh --only dataconnect --import <import_directory>
मैन्युअल तरीके से एक्सपोर्ट/इंपोर्ट करना: VS Code एक्सटेंशन
एम्युलेटर के चलने के दौरान, VS Code एक्सटेंशन के यूज़र इंटरफ़ेस (यूआई) में, एम्युलेटर का डेटा एक्सपोर्ट करें बटन का इस्तेमाल करके, मौजूदा डेटाबेस का कॉन्टेंट एक्सपोर्ट करें. एक्सपोर्ट करने की डिफ़ॉल्ट जगह, आपकी प्रोजेक्ट डायरेक्ट्री के रूट में मौजूद exportedData
डायरेक्ट्री होती है.
पिछले सेक्शन में बताए गए तरीके से, सीएलआई का इस्तेमाल करके इस डेटा को इंपोर्ट किया जा सकता है. VS Code से एमुलेटर शुरू करने से पहले भी, इस डेटा को इंपोर्ट किया जा सकता है. इसके लिए, एमुलेटर कॉन्फ़िगर करें लिंक पर क्लिक करें और इंपोर्ट पाथ सेट करें.
स्कीमा और कनेक्टर मैनेजमेंट के लिए निर्देश
इस सेक्शन में, स्कीमा और कनेक्टर को मैनेज करने के लिए इस्तेमाल किए जाने वाले कमांड के बारे में सीएलआई रेफ़रंस जानकारी दी गई है.
इन निर्देशों के इस्तेमाल के उदाहरणों और सुझाए गए तरीकों के बारे में जानने के लिए, स्कीमा और कनेक्टर मैनेजमेंट गाइड देखें.
स्कीमा और कनेक्टर डिप्लॉय करना
डिप्लॉय करना
firebase deploy
यह कमांड, firebase.json में इंडेक्स की गई Data Connect सेवाओं के लिए संसाधनों को डिप्लॉय करता है. अगर ज़रूरी हो, तो स्कीमा माइग्रेशन और कनेक्टर अपडेट किया जाता है.
Command | जानकारी | |
---|---|---|
firebase deploy |
फ़्लैग करें | जानकारी |
–-only dataconnect |
इस प्रोजेक्ट के लिए, Data Connect की सभी सेवाओं के लिए स्कीमा और कनेक्टर डिप्लॉय करें. हालांकि, Firebase के अन्य प्रॉडक्ट के संसाधनों को डिप्लॉय न करें. | |
–-only dataconnect:serviceId |
चुनी गई Data Connect सेवा के लिए स्कीमा और कनेक्टर डिप्लॉय करें. | |
–-only dataconnect:serviceId:connectorId |
किसी खास Data Connect सेवा के लिए, एक कनेक्टर डिप्लॉय करें. | |
–-only dataconnect:serviceId:schema |
चुनी गई Data Connect सेवा के लिए स्कीमा को डिप्लॉय करें. |
–-only
फ़्लैग की मदद से, कॉमा लगाकर अलग की गई वैल्यू पास की जा सकती हैं, ताकि आप अपने हिसाब से रिसॉर्स का कोई भी सबसेट डिप्लॉय कर सकें.
firebase deploy --only dataconnect:service1:schema,dataconnect:service2
Data Connect की सेवाओं, स्कीमा, और कनेक्टर की सूची बनाना
dataconnect:services:list
firebase dataconnect:services:list
यह कमांड, किसी प्रोजेक्ट पर डिप्लॉय की गई सेवाओं, स्कीमा, और कनेक्टर के बारे में बुनियादी जानकारी दिखाता है.
SQL स्कीमा की तुलना करना और उन्हें माइग्रेट करना
firebase deploy
को चलाने पर, सीएलआई अपडेट डिप्लॉय करने से पहले, SQL स्कीमा की तुलना करता है. dataconnect:sql
निर्देशों के सेट की मदद से, सीधे तुलना की जा सकती है और अपडेट किया जा सकता है.
dataconnect:sql:diff
firebase dataconnect:sql:diff
यह कमांड, किसी सेवा के लोकल स्कीमा की तुलना, उससे जुड़े Cloud SQL डेटाबेस के मौजूदा स्कीमा से करता है. यह उन निर्देशों को प्रिंट करता है जिन्हें डेटाबेस को आपके नए स्कीमा पर माइग्रेट करने के लिए चलाया जाएगा.
Command | जानकारी | |
---|---|---|
firebase dataconnect:sql:diff |
फ़्लैग/पैरामीटर | जानकारी |
serviceId |
सेवा की जानकारी दें. अगर इसे छोड़ा जाता है, तो firebase.json में सभी सेवाओं के लिए, बदलाव की जानकारी प्रिंट करें. |
dataconnect:sql:migrate
firebase dataconnect:sql:migrate
यह कमांड, किसी सेवा के Cloud SQL डेटाबेस में स्थानीय स्कीमा के बदलावों को लागू करता है.
डिफ़ॉल्ट dataconnect.yaml
फ़ाइल के साथ नया स्थानीय Data Connect प्रोजेक्ट सेट अप करने पर, dataconnect:sql:migrate
कमांड का काम यह होता है कि वह बदलावों को लागू करने से पहले, आपको ज़रूरी बदलावों के लिए प्रॉम्प्ट करे. इसके बाद, वैकल्पिक बदलावों के लिए भी प्रॉम्प्ट करे. dataconnect.yaml
कॉन्फ़िगरेशन को अपडेट करके, इस व्यवहार को बदला जा सकता है, ताकि वैकल्पिक बदलावों को हमेशा शामिल किया जा सके या उन्हें अनदेखा किया जा सके. इस बारे में स्क्रैमा को स्ट्रिक्ट या काम करने वाले मोड में माइग्रेट करना में बताया गया है
इंटरैक्टिव एनवायरमेंट में, सीएलआई हर माइग्रेशन एसक्यूएल स्टेटमेंट दिखाता है और यह भी बताता है कि वह डेटा को नुकसान पहुंचाता है या नहीं. साथ ही, आपको उन बदलावों के लिए प्रॉम्प्ट भी दिखाता है जिन्हें आपको लागू करना है.
--force
फ़्लैग पास करना, सभी प्रॉम्प्ट स्वीकार करने के बराबर है.
इंटरैक्टिव नहीं होने वाले एनवायरमेंट में:
--force
के बिना, सिर्फ़ ऐसे बदलाव किए जाते हैं जिनसे डेटा में कोई नुकसान न हो. अगर कोई ऐसा बदलाव किया जाता है जिससे डेटा को नुकसान पहुंच सकता है, तो सीएलआई प्रोसेस को रद्द कर दिया जाता है और कोई बदलाव नहीं किया जाता.--force
का इस्तेमाल करके, सभी बदलाव किए जाते हैं. अगर इसमें कोई ऐसा बदलाव शामिल है जिससे डेटा को नुकसान पहुंच सकता है, तो उसे प्रिंट किया जाता है. साथ ही, आपसे पूछा जाता है कि क्या आपको जारी रखना है. ऐसा तब तक किया जाता है, जब तक--force
फ़्लैग नहीं दिया जाता.
Command | जानकारी | |
---|---|---|
firebase dataconnect:sql:migrate |
फ़्लैग करें | जानकारी |
serviceId |
चुनी गई सेवा के लिए डेटाबेस को माइग्रेट करें. अगर आपके प्रोजेक्ट में सिर्फ़ एक सेवा है, तो serviceId का अनुमान लगाया जाता है. | |
–-force |
प्रॉम्प्ट अपने-आप स्वीकार हो जाएं. |
अन्य --only
फ़्लैग की तरह ही, एक से ज़्यादा सेवाएं दी जा सकती हैं. इन्हें कॉमा लगाकर अलग किया जा सकता है.
किसी स्कीमा को स्ट्रिक्ट या कम्पैटबिलिटी मोड में माइग्रेट करना
Data Connect स्कीमा माइग्रेशन में, स्कीमा की पुष्टि करने के दो अलग-अलग मोड होते हैं: स्ट्रिक्ट और कंपैटबल. सख्त मोड में पुष्टि करने के लिए ज़रूरी है कि ऐप्लिकेशन स्कीमा को डिप्लॉय करने से पहले, डेटाबेस स्कीमा का ऐप्लिकेशन स्कीमा से पूरी तरह मेल खाना चाहिए. कंपैटबिलिटी मोड की पुष्टि करने के लिए ज़रूरी है कि डेटाबेस स्कीमा, ऐप्लिकेशन स्कीमा के साथ काम करता हो. इसका मतलब है कि आपके डेटाबेस में मौजूद उन एलिमेंट में कोई बदलाव नहीं किया जाएगा जिनका इस्तेमाल आपके ऐप्लिकेशन स्कीमा में नहीं किया जाता.
स्कीमा की पुष्टि करने के इन मोड और स्कीमा माइग्रेशन के सबसे सही तरीकों के बारे में, स्कीमा और कनेक्टर मैनेजमेंट गाइड में बताया गया है
पुष्टि करने के मोड को आपकी dataconnect.yaml
फ़ाइल में मौजूद schemaValidation
कुंजी का इस्तेमाल करके तय किया जाता है. अगर schemaValidation
की वैल्यू नहीं दी गई है, तो सीएलआई, काम करने वाले बदलाव लागू करता है. साथ ही, ज़रूरी बदलाव लागू करने से पहले, आपसे अनुमति लेता है. कॉन्फ़िगरेशन का रेफ़रंस देखें.
कनेक्टर में किए गए बदलावों को मैनेज करना
firebase deploy
को चलाने पर, सीएलआई, लागू होने वाले कनेक्टर को अपडेट करना शुरू करता है. सीएलआई, हर कनेक्टर में हुए बदलावों का विश्लेषण करता है और कनेक्टर में हुए ऐसे बदलावों के बारे में आकलन करने वाले मैसेज का एक सेट जारी करता है जिनकी वजह से क्लाइंट कोड के पिछले वर्शन में अनचाहा व्यवहार (मैसेज, चेतावनी-लेवल के होते हैं) या गड़बड़ियां (मैसेज, ब्रेकिंग-लेवल के होते हैं) हो सकती हैं.
असर का आकलन | स्थिति |
---|---|
चेतावनी का लेवल (वायर के साथ काम करता है, व्यवहार में बदलाव हो सकता है) |
|
ब्रेकिंग-लेवल (वायर काम नहीं करता, क्लाइंट काम नहीं कर सकते) |
|
ब्रेकिंग-लेवल (वायर के साथ काम नहीं करता, क्लाइंट काम नहीं करेंगे) |
|
इंटरैक्टिव एनवायरमेंट में, सीएलआई हर कनेक्टर का आकलन दिखाता है और उन बदलावों के लिए प्रॉम्प्ट करता है जिन्हें आपको लागू करना है. --force
फ़्लैग को पास करना, सभी आकलन स्वीकार करने के बराबर है.
बिना इंटरैक्टिव वाले प्लैटफ़ॉर्म पर:
- अगर सिर्फ़ चेतावनी-लेवल के आकलन (संभावित व्यवहार में बदलाव) होते हैं, तो सभी कनेक्टर डिप्लॉय कर दिए जाएंगे और चेतावनियां टर्मिनल में लॉग की जाएंगी.
- अगर कोई ब्रेकिंग-लेवल आकलन होता है, तो कोई भी कनेक्टर डिप्लॉय नहीं किया जाएगा और चेतावनियां टर्मिनल में लॉग की जाएंगी.
--force
फ़्लैग की मदद से, इसे बदला जा सकता है.
ऑडिट के लिए ऑथराइज़ेशन कोड
Firebase क्लाइंट-साइड इंटरफ़ेस (सीएलआई) से firebase deploy
का इस्तेमाल करके, सर्वर पर डिप्लॉय करने पर, Data Connect आपके कनेक्टर कोड का विश्लेषण करके, अनुमति देने की रणनीति का ऑडिट करने में आपकी मदद करता है. अपने कोडबेस की समीक्षा करने के लिए, इस ऑडिट का इस्तेमाल किया जा सकता है.
कनेक्टर डिप्लॉय करने पर, सीएलआई आपके कनेक्टर में मौजूदा, बदले गए, और नए ऑपरेशन कोड के लिए आकलन दिखाएगा.
बदली गई और नई कार्रवाइयों के लिए, CLI चेतावनियां जारी करता है और पुष्टि करने के लिए कहता है. ऐसा तब होता है, जब आपने नई कार्रवाइयों में कुछ ऐक्सेस लेवल का इस्तेमाल किया हो या उन ऐक्सेस लेवल का इस्तेमाल करने के लिए, मौजूदा कार्रवाइयों में बदलाव किया हो.
चेतावनियां और प्रॉम्प्ट हमेशा इनके लिए होते हैं:
PUBLIC
साथ ही, auth.uid
का इस्तेमाल करके फ़िल्टर के साथ ऐक्सेस लेवल को बेहतर नहीं बनाने पर, चेतावनियां और प्रॉम्प्ट इन ऐक्सेस लेवल पर दिखते हैं:
USER
USER_ANON
USER_EMAIL_VERIFIED
अनुमति के बारे में ज़्यादा जानने के लिए, अनुमति और पुष्टि करने से जुड़ी गाइड देखें.
SDK टूल के निर्देश
SDK टूल जनरेट करना
dataconnect:sdk:generate
firebase dataconnect:sdk:generate
यह कमांड, connector.yaml में बताए गए टाइप किए गए SDK टूल जनरेट करता है.
वेब SDK टूल, Android SDK टूल, और iOS SDK टूल के साथ काम करने के लिए, गाइड भी देखें.
Command | जानकारी | |
---|---|---|
firebase dataconnect:sdk:generate |
फ़्लैग करें | जानकारी |
–-watch |
जब भी स्कीमा और कनेक्टर GQL फ़ाइलों में बदलाव किए जाते हैं, तो यह प्रोसेस चलती रहती है और नए SDK जनरेट करती है. अगर कोड जनरेट नहीं हो पाता है, तो गड़बड़ियां स्टैंडर्ड आउटपुट पर प्रिंट हो जाएंगी. साथ ही, जनरेट किया गया कोड बदला नहीं जाएगा और कमांड चलता रहेगा. |
|
–-only connectorId:platform |
सिर्फ़ एक प्लैटफ़ॉर्म और एक कनेक्टर के लिए SDK टूल जनरेट करें. |
–only
फ़्लैग की मदद से, कॉमा लगाकर अलग की गई वैल्यू दी जा सकती हैं.
firebase dataconnect:sdk:generate –-only connector1, connector1:kotlin
Cloud SQL मैनेजमेंट कमांड
Cloud SQL के लिए SQL भूमिकाएं असाइन करना
Data Connect, Cloud SQL पर होस्ट किए गए आपके PostgreSQL इंस्टेंस पर काम करता है. SQL भूमिका के निर्देशों की मदद से, अपने डेटाबेस टेबल की अनुमतियां मैनेज की जा सकती हैं.
dataconnect:sql:setup
firebase dataconnect:sql:setup
यह कमांड, आपके डेटाबेस में टेबल के लिए शुरुआती और ग्लोबल अनुमतियां कॉन्फ़िगर करता है.
डेटाबेस की डिफ़ॉल्ट प्रोवाइज़निंग और मैनेजमेंट फ़्लो में यह माना जाता है कि आपका प्रोजेक्ट, नए (ग्रीनफ़ील्ड) डेटाबेस का इस्तेमाल करता है. firebase deploy
को लागू करने पर, Data Connect डेटाबेस स्कीमा में किए जाने वाले बदलावों को दिखाएगा. साथ ही, आपके अनुमति देने के बाद, माइग्रेशन की प्रोसेस को पूरा करेगा. अगर यह आपका पसंदीदा फ़्लो है, तो dataconnect:sql:setup
आपसे अनुमतियां मांगेगा. इनमें स्कीमा के मालिकाना हक से जुड़ी superuser
अनुमतियां भी शामिल हैं.
मौजूदा (ब्राउनफ़ील्ड) डेटाबेस के लिए, स्कीमा को माइग्रेट करने का आपका वर्कफ़्लो हो सकता है. साथ ही, हो सकता है कि आप स्कीमा का मालिकाना हक खुद बनाए रखना चाहें. अगर यह आपका पसंदीदा फ़्लो है, तो dataconnect:sql:setup
के प्रॉम्प्ट पर अस्वीकार करें. इस प्रॉम्प्ट में पूछा जाता है कि क्या Data Connect को आपके लिए एसक्यूएल माइग्रेशन मैनेज करना चाहिए.
अनुमति न देने पर, Data Connect को आपकी डेटाबेस टेबल का सिर्फ़ read
और
write
ऐक्सेस मिलेगा. हालांकि, स्कीमा का मालिकाना हक और माइग्रेशन की ज़िम्मेदारी आपकी ही रहेगी.
ज़्यादा चर्चा और इस्तेमाल के उदाहरणों के लिए, सेवाओं और डेटाबेस को मैनेज करना लेख पढ़ें.
dataconnect:sql:grant
firebase dataconnect:sql:grant
कुछ मामलों में, हो सकता है कि आप अपने Data Connect ऐप्लिकेशन से जनरेट किए गए डेटा को क्वेरी करने या अपडेट करने के लिए, सीधे अपने डेटाबेस को ऐक्सेस करना चाहें. ऐसा करने के लिए, आपको ज़रूरी उपयोगकर्ता या सेवा खाते को इस सेक्शन में बताई गई भूमिकाओं में से कोई एक भूमिका देनी होगी.
असाइन की गई भूमिकाओं के बारे में ज़्यादा जानने के लिए, PostgreSQL उपयोगकर्ता की भूमिकाएं देखें.
भूमिका | एसक्यूएल भूमिका | अनुमतियां | इस्तेमाल | Grantable |
---|---|---|---|---|
पाठक | firebasereader_<db_name>_<schema_name> |
डेटाबेस का रीड ओनली ऐक्सेस. तय किए गए स्कीमा में मौजूद सभी टेबल पर SELECT ऑपरेशन किए जा सकते हैं. |
यह उन उपयोगकर्ताओं या सेवाओं के लिए सही है जिन्हें डेटा वापस पाने की ज़रूरत है, लेकिन डेटा में बदलाव नहीं करना है. | हां |
राइटर | firebasewriter_<db_name>_<schema_name> |
डेटाबेस को पढ़ने और उसमें बदलाव करने का ऐक्सेस. स्कीमा में मौजूद सभी टेबल पर, SELECT , INSERT , UPDATE , DELETE , और TRUNCATE ऑपरेशन किए जा सकते हैं. |
यह उन उपयोगकर्ताओं या सेवाओं के लिए सही है जिन्हें डेटाबेस में डेटा में बदलाव करना है. | हां |
स्वामी | firebaseowner_<db_name>_<schema_name> |
स्कीमा का मालिक. के पास स्कीमा में मौजूद सभी टेबल और क्रम पर सभी खास अधिकार होते हैं. |
IAM roles/cloudsql.client रोल के साथ मिलकर, यह रोल डेटाबेस पर माइग्रेशन करने की अनुमति देता है. उदाहरण के लिए, firebase dataconnect:sql:migrate को कॉल करते समय. |
हां |
सुपर उपयोगकर्ता | cloudsqlsuperuser |
डेटाबेस पर सभी खास अधिकारों के साथ, पहले से मौजूद सुपरयूज़र की भूमिका. मालिक की अनुमतियों के अलावा, यह स्कीमा बना सकता है, स्कीमा को ड्रॉप कर सकता है, एक्सटेंशन इंस्टॉल कर सकता है, और एडमिन से जुड़े अन्य काम कर सकता है. "firebasesuperuser" के तौर पर लॉग इन करके, CLI में ऐक्सेस किया जाता है. |
एक्सटेंशन इंस्टॉल करने, शुरुआती स्कीमा बनाने, और अन्य उपयोगकर्ताओं को SQL की कोई भी भूमिका देने के लिए ज़रूरी है. अगर किसी ऐसे उपयोगकर्ता को सुपर उपयोगकर्ता के खास अधिकारों की ज़रूरत है जो एडमिन नहीं है, तो माइग्रेशन पूरा नहीं होगा. साथ ही, उपयोगकर्ता को डेटाबेस एडमिन (यानी roles/cloudsql.admin की भूमिका वाला उपयोगकर्ता) से खास अधिकार वाले SQL कमांड चलाने के लिए कहने के लिए कहा जाएगा. |
यह अनुमति roles/cloudsql.admin वाले उपयोगकर्ताओं को दी जाती है. इसे सीधे तौर पर Firebase सीएलआई से नहीं दिया जा सकता |
Command | जानकारी | |
---|---|---|
firebase dataconnect:sql:grant |
फ़्लैग/पैरामीटर | जानकारी |
-R, --role role |
SQL की वह भूमिका जिसे आपको देना है. जैसे: मालिक, लेखक या पाठक. | |
-E, --email email_address |
उस उपयोगकर्ता या सेवा खाते का ईमेल पता जिसे भूमिका देनी है. |
ग्लोबल विकल्प
ये ग्लोबल विकल्प सभी निर्देशों पर लागू होते हैं:
--json
, दूसरे टूल से पार्स करने के लिए, CLI आउटपुट को JSON में स्विच करता है.- ज़रूरत के हिसाब से,
--noninteractive
और--interactive
, TTY के अलावा अन्य एनवायरमेंट का अपने-आप पता लगाने की सुविधा को बदल देते हैं.