Data Connect এর জন্য Firebase CLI কমান্ডের রেফারেন্স

Firebase CLI হল একটি টুল যা আপনাকে কমান্ড লাইন থেকে Firebase পণ্য এবং পরিষেবাগুলি পরিচালনা এবং কনফিগার করতে দেয়।

CLI কমান্ডগুলি প্রদান করে যা বিভিন্ন Data Connect কাজ সম্পাদন করতে ব্যবহার করা যেতে পারে, যেমন একটি নতুন Data Connect প্রজেক্ট তৈরি করা, একটি সংশ্লিষ্ট স্থানীয় ওয়ার্কিং ডিরেক্টরি শুরু করা, Data Connect এমুলেটর সেট আপ করা, Data Connect রিসোর্স তালিকা করা, ক্লায়েন্ট SDK তৈরি করা এবং আরও অনেক কিছু।

সেটআপ কমান্ড

একটি Firebase প্রকল্পে Data Connect যোগ করুন

firebase init

একটি নতুন স্থানীয় প্রকল্প কনফিগারেশন সেট আপ করতে firebase init ব্যবহার করুন। এই ওয়ার্কফ্লো আপনার ডিরেক্টরিতে Firebase কনফিগারেশন ফাইল তৈরি বা আপডেট করে।

firebase init

firebase init ফ্লো আপনাকে একটি পরিষেবা এবং ডাটাবেস সেট আপ করার জন্য এবং ঐচ্ছিকভাবে Data Connect এমুলেটর ইনস্টল করার এবং জেনারেট করা SDK কনফিগার করার মাধ্যমে গাইড করে।

পরিষেবা এবং ডাটাবেস সেটআপ

আপনি যদি পণ্য সেটআপের জন্য dataconnect নির্বাচন করেন, CLI আপনাকে একটি নতুন পরিষেবার নাম এবং অবস্থান এবং PostgreSQL দৃষ্টান্তের জন্য একটি বিদ্যমান ক্লাউড SQL লিঙ্ক করতে বা একটি নতুন উদাহরণ তৈরি করতে অনুরোধ করে।

যদি একটি বিদ্যমান উদাহরণ লিঙ্ক করা হয়, CLI সামঞ্জস্যপূর্ণ সেটিংসের জন্য পরীক্ষা করে, যেমন IAM প্রমাণীকরণ এবং সর্বজনীন IP ঠিকানা।

Local Emulator Suite সেটআপ

CLI ফ্লো Data Connect এমুলেটর সহ এমুলেটর সেট আপ করার প্রস্তাব দেয়।

Data Connect এমুলেটর কমান্ড

Data Connect এমুলেটর শুরু করুন

এমুলেটর: স্টার্ট/এক্সেক

firebase emulators:start/exec

Data Connect এমুলেটরের Local Emulator Suite সংস্করণ ব্যবহার করুন ইন্টারেক্টিভ মোডে start বা স্ক্রিপ্ট-চালিত, exec সাথে অ-ইন্টারেক্টিভ মোডে।

স্থানীয় PostgreSQL ডেটা রপ্তানি এবং আমদানি করুন

স্থানীয় প্রোটোটাইপিং এবং টেস্টিং এবং ক্রমাগত ইন্টিগ্রেশন সমর্থন করার জন্য, আপনি একটি স্থানীয় ডাটাবেসের উদাহরণে সংরক্ষিত ডেটা রপ্তানি করতে পারেন এবং এটি বিকাশের পুনরাবৃত্তি এবং পরীক্ষা চালানোর মধ্যে আমদানি করতে পারেন।

রপ্তানিগুলি আপনার স্থানীয় PostgreSQL ডাটাবেসের স্ন্যাপশট হিসাবে সংরক্ষণ করা হয়।

Data Connect রপ্তানি/আমদানি করার জন্য তিনটি পন্থা অফার করে:

  • এমুলেটর শাটডাউন এবং স্টার্টআপে স্ন্যাপশট ব্যাকআপ প্রদান করতে আপনার firebase.json এ স্বয়ংক্রিয় রপ্তানি/আমদানি কনফিগার করা হয়েছে
  • CLI ব্যবহার করে ম্যানুয়াল রপ্তানি/আমদানি
  • VS কোড এক্সটেনশন ইন্টারফেস ব্যবহার করে ম্যানুয়াল এক্সপোর্ট/আমদানি

আপনার firebase.json এ স্বয়ংক্রিয় রপ্তানি এবং আমদানি কনফিগার করা হয়েছে

ডেভেলপমেন্ট সেশনের মধ্যে ডেটা ব্যাকআপ করতে, firebase init সিকোয়েন্সের সময় একটি স্বয়ংক্রিয় ব্যাকআপ অবস্থান নির্দিষ্ট করুন। এই অবস্থানটি আপনার firebase.jsonemulators.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 কোড এক্সটেনশন UI-তে, এমুলেটর চলাকালীন, বর্তমান ডাটাবেসের বিষয়বস্তু রপ্তানি করতে ডেটা রপ্তানি করতে এক্সপোর্ট এমুলেটর ডেটা বোতামটি ব্যবহার করুন। ডিফল্ট রপ্তানি অবস্থান হল exportedData ডিরেক্টরিটি আপনার প্রকল্প ডিরেক্টরির মূলে।

পূর্ববর্তী বিভাগে বর্ণিত হিসাবে আপনি CLI ব্যবহার করে এই ডেটা আমদানি করতে পারেন। এছাড়াও আপনি VS কোডের মাধ্যমে এমুলেটর শুরু করার আগে কনফিগার এমুলেটর লিঙ্কে ক্লিক করে এবং আমদানি পথ সেট করে এই ডেটা আমদানি করতে পারেন।

স্কিমা এবং সংযোগকারী ব্যবস্থাপনা কমান্ড

এই বিভাগে CLI রেফারেন্স তথ্য রয়েছে যা আপনি স্কিমা এবং সংযোগকারী পরিচালনা করতে ব্যবহার করেন।

এই কমান্ডগুলির সাথে সম্পর্কিত ক্ষেত্রে কীভাবে ব্যবহার করবেন এবং প্রস্তাবিত অনুশীলনের জন্য, স্কিমা এবং সংযোগকারী পরিচালনার নির্দেশিকা দেখুন।

স্কিমা এবং সংযোগকারী স্থাপন করুন

স্থাপন

firebase deploy

এই কমান্ড Firebase.json- এ ইন্ডেক্স করা ডেটা কানেক্ট পরিষেবার জন্য সংস্থান স্থাপন করে। প্রয়োজনে একটি স্কিমা স্থানান্তর এবং সংযোগকারী আপডেট করা হয়।

আদেশ বর্ণনা

ফায়ারবেস স্থাপন

পতাকা বর্ণনা

--শুধুমাত্র ডেটা সংযোগ

এই প্রকল্পের জন্য সমস্ত ডেটা কানেক্ট পরিষেবার জন্য স্কিমা এবং সংযোগকারী স্থাপন করুন, কিন্তু অন্যান্য Firebase পণ্য সংস্থান স্থাপন করবেন না।

--শুধুমাত্র ডেটাকানেক্ট:সার্ভিসআইডি

নির্দিষ্ট ডেটা সংযোগ পরিষেবার জন্য স্কিমা এবং সংযোগকারী স্থাপন করুন৷

--শুধুমাত্র ডেটাকানেক্ট:সার্ভিসআইডি:কানেক্টরআইডি

নির্দিষ্ট ডেটা সংযোগ পরিষেবার জন্য একটি একক সংযোগকারী স্থাপন করুন৷

--শুধুমাত্র ডেটাকানেক্ট:সার্ভিসআইডি:স্কিমা

নির্দিষ্ট ডেটা সংযোগ পরিষেবার জন্য স্কিমা স্থাপন করুন৷

–-only পতাকাগুলির সাথে, আপনি আপনার পছন্দের সংস্থানগুলির যে কোনও উপসেট স্থাপন করতে কমা-বিচ্ছিন্ন মানগুলি পাস করতে পারেন।

firebase deploy --only dataconnect:service1:schema,dataconnect:service2

ডেটা কানেক্ট পরিষেবা, স্কিমা এবং সংযোগকারীর তালিকা করুন

dataconnect:services:list

firebase dataconnect:services:list

এই কমান্ডটি একটি প্রকল্পে স্থাপন করা পরিষেবা, স্কিমা এবং সংযোগকারী সম্পর্কে প্রাথমিক তথ্য প্রিন্ট করে।

তুলনা করুন এবং SQL স্কিমা স্থানান্তর করুন

আপনি যখন firebase deploy চালান, CLI আপডেটগুলি স্থাপন করার আগে একটি SQL স্কিমা তুলনা করে। আপনি তুলনা করতে পারেন এবং dataconnect:sql কমান্ডের একটি সেটের সাথে সরাসরি আপডেট করতে পারেন।

dataconnect:sql:diff

firebase dataconnect:sql:diff

এই কমান্ডটি একটি পরিষেবার জন্য স্থানীয় স্কিমাকে সংশ্লিষ্ট ক্লাউড SQL ডাটাবেসের বর্তমান স্কিমার সাথে তুলনা করে। এটি আপনার নতুন স্কিমাতে ডাটাবেস স্থানান্তর করতে চালিত কমান্ডগুলি প্রিন্ট করে।

আদেশ বর্ণনা

firebase dataconnect:sql:diff

পতাকা/প্যারামিটার বর্ণনা

serviceId

পরিষেবাটি নির্দিষ্ট করুন। যদি বাদ দেওয়া হয়, firebase.json-এ সমস্ত পরিষেবার জন্য পার্থক্য প্রিন্ট করুন।

dataconnect:sql:migrate

firebase dataconnect:sql:migrate

এই কমান্ডটি একটি পরিষেবার ক্লাউড SQL ডাটাবেসে স্থানীয় স্কিমা পরিবর্তনগুলি প্রয়োগ করে৷

আপনি যখন ডিফল্ট dataconnect.yaml ফাইলের সাথে একটি নতুন স্থানীয় Data Connect প্রকল্প সেট আপ করেন, dataconnect:sql:migrate কমান্ডের আচরণ হল আপনাকে যেকোনো প্রয়োজনীয় পরিবর্তনের জন্য অনুরোধ জানানো এবং তারপর পরিবর্তনগুলি কার্যকর করার আগে যেকোনো ঐচ্ছিক পরিবর্তনের জন্য প্রম্পট করা। আপনি আপনার dataconnect.yaml কনফিগারেশন আপডেট করে ঐচ্ছিক পরিবর্তনগুলিকে সর্বদা অন্তর্ভুক্ত বা উপেক্ষা করার জন্য এই আচরণটি সংশোধন করতে পারেন, যেমনটি কঠোর বা সামঞ্জস্যপূর্ণ মোডে স্কিমা স্থানান্তর করার বিষয়ে আলোচনা করা হয়েছে

ইন্টারেক্টিভ পরিবেশে, CLI প্রতিটি মাইগ্রেশন SQL স্টেটমেন্ট প্রদর্শন করে (এবং এটি ধ্বংসাত্মক কিনা) এবং আপনি যে পরিবর্তনগুলি প্রয়োগ করতে চান তার জন্য অনুরোধ করে। --force পতাকা পাস করা সমস্ত প্রম্পট গ্রহণ করার সমতুল্য।

আন্তঃক্রিয়াশীল পরিবেশে:

  • --force ছাড়া, শুধুমাত্র অ-ধ্বংসাত্মক পরিবর্তন করা হয়। যদি ধ্বংসাত্মক পরিবর্তন হয়, CLI কোনো পরিবর্তন না করেই বাতিল হয়ে যায়।
  • --force দিয়ে, সমস্ত পরিবর্তন করা হয়। যদি এর মধ্যে কোনো ধ্বংসাত্মক পরিবর্তন অন্তর্ভুক্ত থাকে, তাহলে সেগুলি মুদ্রিত হবে এবং --force পতাকা প্রদান না করা পর্যন্ত আপনি চালিয়ে যেতে চান কিনা তা আপনাকে অনুরোধ করা হবে।
আদেশ বর্ণনা

firebase dataconnect:sql:migrate

পতাকা বর্ণনা

serviceId

নির্দিষ্ট পরিষেবার জন্য ডাটাবেস স্থানান্তর করুন. আপনার প্রকল্পে শুধুমাত্র একটি পরিষেবা থাকলে serviceId অনুমান করা হয়।

-- বল

স্বয়ংক্রিয়ভাবে অনুরোধ গ্রহণ.

অন্যান্য --only পতাকার মতো, আপনি কমা দ্বারা পৃথক করা একাধিক পরিষেবা প্রদান করতে পারেন।

কঠোর বা সামঞ্জস্যপূর্ণ মোডে একটি স্কিমা স্থানান্তর করুন

Data Connect স্কিমা মাইগ্রেশনের দুটি ভিন্ন স্কিমা বৈধতা মোড রয়েছে: কঠোর এবং সামঞ্জস্যপূর্ণ । কঠোর মোড যাচাইকরণের জন্য অ্যাপ্লিকেশন স্কিমা স্থাপন করার আগে ডাটাবেস স্কিমাটি অ্যাপ্লিকেশন স্কিমার সাথে ঠিক মেলে। সামঞ্জস্যপূর্ণ মোড যাচাইকরণের জন্য ডাটাবেস স্কিমা অ্যাপ্লিকেশন স্কিমার সাথে সামঞ্জস্যপূর্ণ হতে হবে, যার অর্থ আপনার ডাটাবেসের উপাদানগুলি যা আপনার অ্যাপ্লিকেশন স্কিমা দ্বারা ব্যবহৃত হয় না সেগুলি অপরিবর্তিত রেখে দেওয়া হয়৷

এই স্কিমা বৈধকরণ মোড এবং স্কিমা মাইগ্রেশনের জন্য সর্বোত্তম অনুশীলনগুলি স্কিমা এবং সংযোগকারী পরিচালনার গাইডে কভার করা হয়েছে

আপনার dataconnect.yaml ফাইলে schemaValidation কী ব্যবহার করে বৈধকরণ মোড সংজ্ঞায়িত করা হয়েছে। schemaValidation অনির্দিষ্ট থাকলে, CLI সামঞ্জস্যপূর্ণ পরিবর্তনগুলি প্রয়োগ করে এবং কোনো কঠোর পরিবর্তন কার্যকর করার আগে আপনাকে অনুরোধ করে। কনফিগারেশন রেফারেন্স দেখুন।

সংযোগকারী পরিবর্তন পরিচালনা করুন

আপনি যখন firebase deploy চালান, তখন CLI প্রযোজ্য সংযোগকারীগুলির একটি আপডেট শুরু করে। CLI প্রতিটি সংযোগকারীর পরিবর্তনগুলি বিশ্লেষণ করে এবং ক্লায়েন্ট কোডের পূর্ববর্তী সংস্করণগুলিতে অপ্রত্যাশিত আচরণ (বার্তাগুলি সতর্কীকরণ-স্তরের) বা ভাঙ্গন (বার্তাগুলি ব্রেকিং-লেভেল) হতে পারে এমন সংযোগকারী পরিবর্তনগুলির ক্ষেত্রে মূল্যায়ন বার্তাগুলির একটি সেট জারি করে৷

প্রভাব মূল্যায়ন দৃশ্যকল্প
সতর্কতা-স্তর (তারের সামঞ্জস্যপূর্ণ, আচরণ পরিবর্তন করতে পারে)
  • একটি @retired টীকা ছাড়া একটি প্রশ্ন থেকে একটি বাতিলযোগ্য ক্ষেত্র সরানো হচ্ছে৷
ব্রেকিং-লেভেল (তারের বেমানান, ক্লায়েন্ট ভেঙ্গে যেতে পারে)
  • একটি ডিফল্ট মান ছাড়াই একটি শূন্য ভেরিয়েবলকে নন-নাল এ পরিবর্তন করা।
  • একটি ক্ষেত্রের ডেটা টাইপ পরিবর্তন করে কিছু JSON-সামঞ্জস্যপূর্ণ হতে হবে (যেমন Int থেকে Float )।
  • একটি নন-নাল কলামকে nullable এ পরিবর্তন করা হচ্ছে।
  • @retired টীকা ছাড়া একটি বাতিলযোগ্য পরিবর্তনশীল অপসারণ করা হচ্ছে।
  • একটি @retired টীকা ছাড়া একটি ডিফল্ট মান সহ একটি নন-নাল ভেরিয়েবল সরানো হচ্ছে।
ব্রেকিং-লেভেল (তারের বেমানান, ক্লায়েন্ট ভেঙ্গে যাবে )
  • @retired টীকা ছাড়াই একটি অপারেশন সরানো হচ্ছে।
  • একটি @retired টীকা ছাড়া একটি প্রশ্ন থেকে একটি নন-নাল ক্ষেত্র সরানো হচ্ছে৷
  • একটি ডিফল্ট মান ছাড়া একটি নন-নাল ভেরিয়েবল যোগ করা।
  • একটি ক্ষেত্রের ডেটা টাইপকে বেমানান কিছুতে পরিবর্তন করা (যেমন String থেকে Int )।
  • একটি ডিফল্ট মান ছাড়া এবং একটি @retired টীকা ছাড়া একটি নন-নাল ভেরিয়েবল সরানো হচ্ছে।

ইন্টারেক্টিভ পরিবেশে, CLI প্রতিটি সংযোগকারী মূল্যায়ন প্রদর্শন করে এবং আপনি যে পরিবর্তনগুলি প্রয়োগ করতে চান তার জন্য অনুরোধ করে। --force পতাকা পাস করা সমস্ত মূল্যায়ন গ্রহণ করার সমতুল্য।

অ-ইন্টারেক্টিভ পরিবেশে:

  • যদি শুধুমাত্র সতর্কতা-স্তরের মূল্যায়ন (সম্ভাব্য আচরণের পরিবর্তন) ঘটে, সমস্ত সংযোগকারী স্থাপন করা হবে এবং সতর্কতাগুলি টার্মিনালে লগ করা হবে।
  • কোনো ব্রেকিং-লেভেল অ্যাসেসমেন্ট ঘটলে, কোনো সংযোগকারী স্থাপন করা হবে না এবং টার্মিনালে সতর্কতা লগ করা হবে। আপনি --force পতাকা দিয়ে ওভাররাইড করতে পারেন।

অডিট অনুমোদন কোড

যখন আপনি Firebase CLI থেকে firebase deploy ব্যবহার করে সার্ভারে স্থাপন করেন তখন Data Connect আপনাকে আপনার সংযোগকারী কোড বিশ্লেষণ করে আপনার অনুমোদনের কৌশল অডিট করতে সহায়তা করে। আপনি আপনার কোডবেস পর্যালোচনা করতে সাহায্য করতে এই অডিট ব্যবহার করতে পারেন।

আপনি যখন আপনার সংযোগকারী স্থাপন করেন, তখন CLI আপনার সংযোগকারীতে বিদ্যমান, পরিবর্তিত এবং নতুন অপারেশন কোডের মূল্যায়ন আউটপুট করবে।

পরিবর্তিত এবং নতুন ক্রিয়াকলাপগুলির জন্য, 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-এর সাথে কাজ করার জন্য নির্দেশিকাগুলি দেখুন৷

আদেশ বর্ণনা

ফায়ারবেস ডেটা সংযোগ: এসডিকে: জেনারেট

পতাকা বর্ণনা

--ঘড়ি

প্রক্রিয়াটি চলমান রাখে এবং যখনই আপনি আপনার স্কিমা এবং সংযোগকারী GQL ফাইলগুলিতে পরিবর্তনগুলি সংরক্ষণ করেন তখনই নতুন SDK তৈরি করে৷

যদি প্রজন্ম ব্যর্থ হয়, ত্রুটিগুলি stdout এ প্রিন্ট করা হবে, জেনারেট করা কোডটি পরিবর্তন করা হবে না এবং কমান্ডটি চলতে থাকবে।

--শুধু সংযোগকারী আইডি:প্ল্যাটফর্ম

শুধুমাত্র একটি একক প্ল্যাটফর্ম এবং একক সংযোগকারীর জন্য SDK তৈরি করুন৷

–only পতাকাগুলির সাথে, আপনি কমা-বিচ্ছিন্ন মানগুলি পাস করতে পারেন৷

firebase dataconnect:sdk:generate –-only connector1, connector1:kotlin

ক্লাউড এসকিউএল ম্যানেজমেন্ট কমান্ড

ক্লাউড এসকিউএল-এর জন্য SQL ভূমিকা প্রদান করুন

ক্লাউড এসকিউএল-এ হোস্ট করা আপনার নিজস্ব PostgreSQL উদাহরণের উপরে Data Connect কাজ করে। এসকিউএল রোল কমান্ড আপনাকে আপনার ডাটাবেস টেবিলে অনুমতিগুলি পরিচালনা করতে সহায়তা করে।

dataconnect:sql:সেটআপ

firebase dataconnect:sql:setup

এই কমান্ডটি আপনার ডাটাবেসের টেবিলে প্রাথমিক, বিশ্বব্যাপী অনুমতিগুলি কনফিগার করে।

ডিফল্ট ডাটাবেস প্রভিশনিং এবং ম্যানেজমেন্ট ফ্লো অনুমান করে যে আপনার প্রোজেক্ট একটি নতুন (গ্রিনফিল্ড) ডাটাবেস ব্যবহার করে, এবং আপনি যখন firebase deploy চালু করবেন, তখন Data Connect ডাটাবেস স্কিমা পরিবর্তনগুলি প্রদর্শন করবে এবং আপনার অনুমোদনের পরে যেকোন মাইগ্রেশন করবে। যদি এটি আপনার পছন্দের প্রবাহ হয়, dataconnect:sql:setup আপনাকে superuser স্কিমা মালিকানা সহ অনুমতি প্রদান করতে অনুরোধ করে।

বিদ্যমান (ব্রাউনফিল্ড) ডাটাবেসের জন্য, আপনার স্কিমা স্থানান্তর করার জন্য আপনার নিজস্ব ওয়ার্কফ্লো থাকতে পারে এবং আপনি নিজেই স্কিমার মালিকানা বজায় রাখতে চান। যদি এটি আপনার পছন্দের প্রবাহ হয়, dataconnect:sql:setup প্রম্পটে প্রত্যাখ্যান নিশ্চিত করুন যে Data Connect আপনার জন্য SQL মাইগ্রেশন পরিচালনা করবে কিনা। প্রত্যাখ্যানের ফলে, Data Connect শুধুমাত্র আপনার ডাটাবেস টেবিলে read এবং write অ্যাক্সেস নেবে, কিন্তু স্কিমা মালিকানা এবং স্থানান্তর আপনার দায়িত্ব থেকে যাবে।

আরও আলোচনা এবং ব্যবহারের ক্ষেত্রে, পরিষেবা এবং ডেটাবেস পরিচালনা দেখুন।

dataconnect:sql:grant

firebase dataconnect:sql:grant

কিছু ক্ষেত্রে, আপনি আপনার Data Connect অ্যাপস দ্বারা উত্পন্ন ডেটা অনুসন্ধান বা আপডেট করতে সরাসরি আপনার ডাটাবেস অ্যাক্সেস করতে চাইতে পারেন৷ এটি করার জন্য, আপনাকে প্রয়োজনীয় ব্যবহারকারী বা পরিষেবা অ্যাকাউন্টে এই বিভাগে সংজ্ঞায়িত ভূমিকাগুলির একটি প্রদান করতে হবে।

প্রদত্ত ভূমিকার বিস্তারিত জানার জন্য, PostgreSQL ব্যবহারকারীর ভূমিকা দেখুন।

ভূমিকা এসকিউএল ভূমিকা অনুমতি ব্যবহার অনুদানযোগ্য
পাঠক 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 ডাটাবেসে সম্পূর্ণ সুবিধা সহ অন্তর্নির্মিত সুপার ইউজার ভূমিকা।

মালিকের অনুমতি ছাড়াও, এটি স্কিমা তৈরি করতে পারে, স্কিমা ড্রপ করতে পারে, এক্সটেনশন ইনস্টল করতে পারে এবং অন্য কোন প্রশাসনিক কাজ সম্পাদন করতে পারে।

"firebasessuperuser" হিসাবে লগ ইন করে CLI-তে অ্যাক্সেস করা হয়েছে।
এক্সটেনশন ইনস্টল করার জন্য, প্রাথমিক স্কিমা তৈরি করার জন্য এবং অন্যান্য ব্যবহারকারীদেরকে যে কোনো মঞ্জুরযোগ্য SQL ভূমিকা প্রদানের জন্য প্রয়োজনীয়।

যদি একজন নন-অ্যাডমিন ব্যবহারকারীর সুপার-ইউজার বিশেষাধিকারের প্রয়োজন হয়, মাইগ্রেশন ব্যর্থ হবে এবং ব্যবহারকারীকে ডাটাবেস অ্যাডমিনিস্ট্রেটরকে (অর্থাৎ, roles/cloudsql.admin সহ একজন ব্যবহারকারী) বিশেষাধিকারপ্রাপ্ত SQL কমান্ড চালানোর জন্য অনুরোধ করবে।
roles/cloudsql.admin সহ ব্যবহারকারীদের মঞ্জুর করা হয়েছে এবং Firebase CLI থেকে সরাসরি মঞ্জুর করা যাবে না
আদেশ বর্ণনা

firebase dataconnect:sql:grant

পতাকা/প্যারামিটার বর্ণনা

-আর, --ভূমিকা

মঞ্জুর করার জন্য SQL ভূমিকা, যার মধ্যে একটি: মালিক, লেখক বা পাঠক৷

-ই, --ইমেইল ইমেইল_ঠিকানা

ভূমিকা প্রদানের জন্য একটি ব্যবহারকারী বা পরিষেবা অ্যাকাউন্টের জন্য ইমেল।

গ্লোবাল অপশন

নিম্নলিখিত বিশ্বব্যাপী বিকল্পগুলি সমস্ত কমান্ডের জন্য প্রযোজ্য:

  • --json অন্যান্য টুল দ্বারা পার্স করার জন্য CLI আউটপুট JSON এ স্যুইচ করে।
  • --noninteractive এবং --interactive override, প্রয়োজন অনুযায়ী, অ-TTY পরিবেশের স্বয়ংক্রিয় সনাক্তকরণ।