Firebase সিএলআই হল এমন একটি টুল যা আপনাকে কমান্ড লাইন থেকে ফায়ারবেস পণ্য এবং পরিষেবাগুলি পরিচালনা এবং কনফিগার করতে দেয়।
CLI এমন কমান্ড প্রদান করে যা বিভিন্ন ধরণের Data Connect কাজ সম্পাদন করতে ব্যবহার করা যেতে পারে, যেমন একটি নতুন Data Connect প্রকল্প তৈরি করা, একটি সংশ্লিষ্ট স্থানীয় ওয়ার্কিং ডিরেক্টরি শুরু করা, Data Connect এমুলেটর সেট আপ করা, Data Connect রিসোর্স তালিকাভুক্ত করা, ক্লায়েন্ট SDK তৈরি করা এবং আরও অনেক কিছু।
সেটআপ কমান্ড
একটি Firebase প্রকল্পে Data Connect যোগ করুন
ফায়ারবেস 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 ব্যবহার করে ম্যানুয়াল রপ্তানি/আমদানি
- ভিএস কোড এক্সটেনশন ইন্টারফেস ব্যবহার করে ম্যানুয়াল এক্সপোর্ট/ইমপোর্ট
আপনার 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 কোড এক্সটেনশন UI তে, যখন এমুলেটরটি চলমান থাকে, তখন বর্তমান ডাটাবেস সামগ্রী রপ্তানি করতে ডেটা রপ্তানি করতে এক্সপোর্ট এমুলেটর ডেটা বোতামটি ব্যবহার করুন। ডিফল্ট এক্সপোর্ট অবস্থান হল আপনার প্রোজেক্ট ডিরেক্টরির মূলে থাকা exportedData ডিরেক্টরি।
পূর্ববর্তী বিভাগে বর্ণিত CLI ব্যবহার করে আপনি এই ডেটা আমদানি করতে পারেন। আপনি VS কোডের মাধ্যমে এমুলেটর শুরু করার আগে কনফিগার এমুলেটর লিঙ্কে ক্লিক করে এবং Import Path সেট করে এই ডেটা আমদানি করতে পারেন।
স্কিমা এবং সংযোগকারী ব্যবস্থাপনা কমান্ড
এই বিভাগে স্কিমা এবং সংযোগকারী পরিচালনা করার জন্য আপনার ব্যবহৃত কমান্ডগুলির জন্য CLI রেফারেন্স তথ্য রয়েছে।
এই কমান্ডগুলির সাথে সম্পর্কিত কেস এবং প্রস্তাবিত অনুশীলনগুলি কীভাবে ব্যবহার করবেন তার জন্য, স্কিমা এবং সংযোগকারী পরিচালনা নির্দেশিকা দেখুন।
স্কিমা এবং সংযোগকারী স্থাপন করুন
স্থাপন করা
firebase deployএই কমান্ডটি firebase.json এ সূচীকৃত ডেটা কানেক্ট পরিষেবাগুলির জন্য সংস্থান স্থাপন করে। প্রয়োজনে একটি স্কিমা মাইগ্রেশন এবং সংযোগকারী আপডেট করা হয়।
| কমান্ড | বিবরণ | |
|---|---|---|
ফায়ারবেস স্থাপন | পতাকা | বিবরণ |
--শুধুমাত্র ডেটা সংযোগ | এই প্রকল্পের জন্য সমস্ত ডেটা কানেক্ট পরিষেবার জন্য স্কিমা এবং সংযোগকারী স্থাপন করুন, কিন্তু অন্যান্য Firebase পণ্য সংস্থান স্থাপন করবেন না। | |
--শুধুমাত্র ডেটাকানেক্ট: সার্ভিস আইডি | নির্দিষ্ট ডেটা কানেক্ট পরিষেবার জন্য স্কিমা এবং সংযোগকারী স্থাপন করুন। | |
--শুধুমাত্র ডেটাকানেক্ট: সার্ভিস আইডি: কানেক্টর আইডি | নির্দিষ্ট ডেটা কানেক্ট পরিষেবার জন্য একটি একক সংযোগকারী স্থাপন করুন। | |
--শুধুমাত্র ডেটাকানেক্ট: সার্ভিস আইডি:স্কিমা | নির্দিষ্ট ডেটা কানেক্ট পরিষেবার জন্য স্কিমা স্থাপন করুন। | |
–-only ফ্ল্যাগের সাহায্যে, আপনি আপনার পছন্দসই যেকোনো উপসেট রিসোর্স স্থাপন করতে কমা-বিচ্ছিন্ন মানগুলি পাস করতে পারেন।
firebase deploy --only dataconnect:service1:schema,dataconnect:service2ডেটা কানেক্ট পরিষেবা, স্কিমা এবং সংযোগকারীগুলির তালিকা তৈরি করুন
ডেটাকানেক্ট: পরিষেবা: তালিকা
firebase dataconnect:services:listএই কমান্ডটি একটি প্রকল্পে মোতায়েন করা পরিষেবা, স্কিমা এবং সংযোগকারী সম্পর্কে মৌলিক তথ্য প্রিন্ট করে।
SQL স্কিমা তুলনা এবং স্থানান্তর করুন
যখন আপনি firebase deploy চালান, তখন CLI আপডেট স্থাপনের আগে একটি SQL স্কিমা তুলনা সম্পাদন করে। আপনি dataconnect:sql কমান্ডের একটি সেট ব্যবহার করে সরাসরি তুলনা এবং আপডেট সম্পাদন করতে পারেন।
ডেটাকানেক্ট:sql:diff
firebase dataconnect:sql:diffএই কমান্ডটি একটি পরিষেবার স্থানীয় স্কিমার সাথে সংশ্লিষ্ট ক্লাউড SQL ডাটাবেসের বর্তমান স্কিমার তুলনা করে। এটি আপনার নতুন স্কিমে ডাটাবেস স্থানান্তর করার জন্য যে কমান্ডগুলি চালানো হবে তা প্রিন্ট করে।
| কমান্ড | বিবরণ | |
|---|---|---|
ফায়ারবেস ডেটাকানেক্ট:sql:diff | পতাকা/প্যারামিটার | বিবরণ |
পরিষেবা আইডি | পরিষেবাটি নির্দিষ্ট করুন। যদি বাদ দেওয়া হয়, তাহলে firebase.json-এ সমস্ত পরিষেবার জন্য পার্থক্যটি প্রিন্ট করুন। | |
ডেটাকানেক্ট:sql:মাইগ্রেট
firebase dataconnect:sql:migrateএই কমান্ডটি কোনও পরিষেবার ক্লাউড SQL ডাটাবেসে স্থানীয় স্কিমা পরিবর্তনগুলি প্রয়োগ করে।
যখন আপনি ডিফল্ট dataconnect.yaml ফাইলের মাধ্যমে একটি নতুন স্থানীয় Data Connect প্রকল্প সেট আপ করেন, তখন dataconnect:sql:migrate কমান্ডের আচরণ হল যেকোনো প্রয়োজনীয় পরিবর্তনের জন্য আপনাকে অনুরোধ করা, এবং তারপর পরিবর্তনগুলি কার্যকর করার আগে যেকোনো ঐচ্ছিক পরিবর্তনের জন্য অনুরোধ করা। আপনি আপনার dataconnect.yaml কনফিগারেশন আপডেট করে সর্বদা ঐচ্ছিক পরিবর্তনগুলি অন্তর্ভুক্ত বা উপেক্ষা করার জন্য এই আচরণটি পরিবর্তন করতে পারেন, যেমনটি migrate a schema in strict or compatible mode- এ আলোচনা করা হয়েছে।
ইন্টারেক্টিভ পরিবেশে, CLI প্রতিটি মাইগ্রেশন SQL স্টেটমেন্ট (এবং এটি ধ্বংসাত্মক কিনা) প্রদর্শন করে এবং আপনি যে পরিবর্তনগুলি প্রয়োগ করতে চান তার জন্য অনুরোধ করে। --force পতাকাটি পাস করা সমস্ত প্রম্পট গ্রহণ করার সমতুল্য।
অ-ইন্টারেক্টিভ পরিবেশে:
-
--forceছাড়া, শুধুমাত্র অ-ধ্বংসাত্মক পরিবর্তন করা হয়। যদি ধ্বংসাত্মক পরিবর্তন হয়, তাহলে CLI কোনও পরিবর্তন না করেই বাতিল হয়ে যায়। -
--forceব্যবহার করে, সমস্ত পরিবর্তন করা হয়। যদি এর মধ্যে কোনও ধ্বংসাত্মক পরিবর্তন থাকে, তাহলে সেগুলি প্রিন্ট করা হয় এবং আপনাকে জিজ্ঞাসা করা হয় যে আপনি চালিয়ে যেতে চান কিনা, যদি না--forceপতাকা প্রদান করা হয়।
| কমান্ড | বিবরণ | |
|---|---|---|
ফায়ারবেস ডেটাকানেক্ট:sql:মাইগ্রেট | পতাকা | বিবরণ |
পরিষেবা আইডি | নির্দিষ্ট পরিষেবার জন্য ডাটাবেসটি স্থানান্তর করুন। আপনার প্রকল্পে যদি কেবল একটি পরিষেবা থাকে তবে পরিষেবা আইডি অনুমান করা হয়। | |
--বল | স্বয়ংক্রিয়ভাবে প্রম্পট গ্রহণ করুন। | |
অন্যান্য --only পতাকার মতো, আপনি কমা দ্বারা পৃথক করে একাধিক পরিষেবা প্রদান করতে পারেন।
একটি স্কিমাকে কঠোর বা সামঞ্জস্যপূর্ণ মোডে স্থানান্তর করুন
Data Connect স্কিমা মাইগ্রেশনের দুটি ভিন্ন স্কিমা ভ্যালিডেশন মোড রয়েছে: কঠোর এবং সামঞ্জস্যপূর্ণ । কঠোর মোড ভ্যালিডেশনের জন্য অ্যাপ্লিকেশন স্কিমা স্থাপনের আগে ডাটাবেস স্কিমা অ্যাপ্লিকেশন স্কিমার সাথে হুবহু মেলে। সামঞ্জস্যপূর্ণ মোড ভ্যালিডেশনের জন্য ডাটাবেস স্কিমা অ্যাপ্লিকেশন স্কিমার সাথে সামঞ্জস্যপূর্ণ হওয়া প্রয়োজন, যার অর্থ আপনার ডাটাবেসের যে উপাদানগুলি আপনার অ্যাপ্লিকেশন স্কিমা দ্বারা ব্যবহৃত হয় না সেগুলি অপরিবর্তিত রাখা হয়।
এই স্কিমা যাচাইকরণ মোড এবং স্কিমা মাইগ্রেশনের জন্য সর্বোত্তম অনুশীলনগুলি স্কিমা এবং সংযোগকারী ব্যবস্থাপনা নির্দেশিকায় অন্তর্ভুক্ত করা হয়েছে।
আপনার dataconnect.yaml ফাইলে schemaValidation কী ব্যবহার করে বৈধকরণ মোড সংজ্ঞায়িত করা হয়। যদি schemaValidation নির্দিষ্ট না থাকে, তাহলে CLI সামঞ্জস্যপূর্ণ পরিবর্তনগুলি প্রয়োগ করে এবং কোনও কঠোর পরিবর্তন কার্যকর করার আগে আপনাকে অনুরোধ করে। কনফিগারেশন রেফারেন্স দেখুন।
সংযোগকারীর পরিবর্তনগুলি পরিচালনা করুন
যখন আপনি firebase deploy চালান, তখন CLI প্রযোজ্য সংযোগকারীদের একটি আপডেট শুরু করে। CLI প্রতিটি সংযোগকারীর পরিবর্তন বিশ্লেষণ করে এবং সংযোগকারীর পরিবর্তনগুলির ক্ষেত্রে মূল্যায়ন বার্তাগুলির একটি সেট জারি করে যা ক্লায়েন্ট কোডের পূর্ববর্তী সংস্করণগুলিতে অপ্রত্যাশিত আচরণ (বার্তাগুলি সতর্কতা-স্তরের) বা ভাঙ্গন (বার্তাগুলি ব্রেকিং-স্তরের) সৃষ্টি করতে পারে।
| প্রভাব মূল্যায়ন | দৃশ্যকল্প |
|---|---|
| সতর্কতা-স্তর (তারের সাথে সামঞ্জস্যপূর্ণ, আচরণ পরিবর্তন করতে পারে) |
|
| ব্রেকিং-লেভেল (তারের সাথে সামঞ্জস্যপূর্ণ নয়, ক্লায়েন্টদের বিরতি দিতে পারে) |
|
| ব্রেকিং-লেভেল (তারের সাথে সামঞ্জস্যপূর্ণ নয়, ক্লায়েন্টদের ভেঙে ফেলবে ) |
|
ইন্টারেক্টিভ পরিবেশে, CLI প্রতিটি সংযোগকারী মূল্যায়ন প্রদর্শন করে এবং আপনি যে পরিবর্তনগুলি প্রয়োগ করতে চান তার জন্য অনুরোধ করে। --force পতাকাটি পাস করা সমস্ত মূল্যায়ন গ্রহণের সমতুল্য।
অ-ইন্টারেক্টিভ পরিবেশে:
- যদি শুধুমাত্র সতর্কতা-স্তরের মূল্যায়ন (সম্ভাব্য আচরণগত পরিবর্তন) ঘটে, তাহলে সমস্ত সংযোগকারী স্থাপন করা হবে এবং সতর্কতাগুলি টার্মিনালে লগ করা হবে।
- যদি কোনও ব্রেকিং-লেভেল মূল্যায়ন ঘটে, তাহলে কোনও সংযোগকারী স্থাপন করা হবে না এবং সতর্কতাগুলি টার্মিনালে লগ করা হবে। আপনি
--forceপতাকা দিয়ে ওভাররাইড করতে পারেন।
অডিট অনুমোদন কোড
Firebase CLI থেকে firebase deploy ব্যবহার করে সার্ভারে স্থাপন করার সময় Data Connect আপনার সংযোগকারী কোড বিশ্লেষণ করে আপনার অনুমোদন কৌশল অডিট করতে সাহায্য করে। আপনি আপনার কোডবেস পর্যালোচনা করতে সাহায্য করার জন্য এই অডিট ব্যবহার করতে পারেন।
যখন আপনি আপনার সংযোগকারী স্থাপন করবেন, তখন CLI আপনার সংযোগকারীতে বিদ্যমান, পরিবর্তিত এবং নতুন অপারেশন কোডের মূল্যায়ন আউটপুট করবে।
পরিবর্তিত এবং নতুন ক্রিয়াকলাপের জন্য, যখন আপনি আপনার নতুন ক্রিয়াকলাপে নির্দিষ্ট অ্যাক্সেস স্তর ব্যবহার করেন, অথবা যখন আপনি সেই অ্যাক্সেস স্তরগুলি ব্যবহার করার জন্য বিদ্যমান ক্রিয়াকলাপগুলি পরিবর্তন করেন, তখন CLI সতর্কতা জারি করে এবং আপনাকে নিশ্চিতকরণের জন্য অনুরোধ করে।
সতর্কতা এবং প্রম্পট সর্বদা নিম্নলিখিত ক্ষেত্রে ঘটে:
-
PUBLIC
এবং, auth.uid ব্যবহার করে ফিল্টার ব্যবহার না করলে নিম্নলিখিত অ্যাক্সেস লেভেলগুলিতে সতর্কতা এবং প্রম্পট দেখা দেয়:
-
USER -
USER_ANON -
USER_EMAIL_VERIFIED
অনুমোদন সম্পর্কে আরও তথ্যের জন্য, অনুমোদন এবং প্রত্যয়ন নির্দেশিকা দেখুন।
SDK কমান্ড
SDK তৈরি করুন
ডেটাকানেক্ট:এসডিকে:জেনারেট করুন
firebase dataconnect:sdk:generateএই কমান্ডটি connector.yaml এ ঘোষিত টাইপ করা SDK গুলি তৈরি করে।
এছাড়াও ওয়েব SDK , Android SDK এবং iOS SDK এর সাথে কাজ করার নির্দেশিকাগুলি দেখুন।
| কমান্ড | বিবরণ | |
|---|---|---|
ফায়ারবেস ডেটাকানেক্ট: sdk: জেনারেট করুন | পতাকা | বিবরণ |
–-ঘড়ি | আপনার স্কিমা এবং সংযোগকারী GQL ফাইলগুলিতে পরিবর্তনগুলি সংরক্ষণ করলে প্রক্রিয়াটি চলমান রাখে এবং নতুন SDK তৈরি করে। যদি জেনারেশন ব্যর্থ হয়, তাহলে stdout-এ ত্রুটিগুলি প্রিন্ট করা হবে, জেনারেট করা কোড পরিবর্তন করা হবে না এবং কমান্ডটি চলতে থাকবে। | |
–-only connectorId:প্ল্যাটফর্ম | শুধুমাত্র একটি একক প্ল্যাটফর্ম এবং একক সংযোগকারীর জন্য SDK তৈরি করুন। | |
–only ফ্ল্যাগের সাহায্যে, আপনি কমা দ্বারা পৃথক করা মানগুলি পাস করতে পারেন।
firebase dataconnect:sdk:generate –-only connector1, connector1:kotlinক্লাউড এসকিউএল ম্যানেজমেন্ট কমান্ড
ক্লাউড SQL-এর জন্য SQL ভূমিকা প্রদান করুন
Data Connect ক্লাউড SQL-এ হোস্ট করা আপনার নিজস্ব PostgreSQL ইনস্ট্যান্সের উপরে কাজ করে। SQL রোল কমান্ডগুলি আপনার ডাটাবেস টেবিলের অনুমতিগুলি পরিচালনা করতে সহায়তা করে।
ডেটাকানেক্ট:sql:সেটআপ
firebase dataconnect:sql:setupএই কমান্ডটি আপনার ডাটাবেসের টেবিলের প্রাথমিক, বিশ্বব্যাপী অনুমতিগুলি কনফিগার করে।
ডিফল্ট ডাটাবেস প্রভিশনিং এবং ম্যানেজমেন্ট ফ্লো ধরে নেয় যে আপনার প্রোজেক্টটি একটি নতুন (গ্রিনফিল্ড) ডাটাবেস ব্যবহার করে, এবং যখন আপনি firebase deploy ব্যবহার করেন, তখন Data Connect ডাটাবেস স্কিমা পরিবর্তনগুলি প্রদর্শন করবে এবং আপনার অনুমোদনের পরে যেকোনো মাইগ্রেশন সম্পাদন করবে। যদি এটি আপনার পছন্দের ফ্লো হয়, dataconnect:sql:setup আপনাকে superuser স্কিমা মালিকানা সহ অনুমতি প্রদানের জন্য অনুরোধ করবে।
বিদ্যমান (ব্রাউনফিল্ড) ডাটাবেসের ক্ষেত্রে, স্কিমা মাইগ্রেশনের জন্য আপনার নিজস্ব ওয়ার্কফ্লো থাকতে পারে এবং আপনি নিজেই স্কিমার মালিকানা বজায় রাখতে চান। যদি এটি আপনার পছন্দের ফ্লো হয়, তাহলে dataconnect:sql:setup প্রম্পটে Data Connect আপনার জন্য SQL মাইগ্রেশন পরিচালনা করবে কিনা তা জানতে অস্বীকার করতে ভুলবেন না। হ্রাসের ফলে, Data Connect আপনার ডাটাবেস টেবিলগুলিতে শুধুমাত্র read এবং write অ্যাক্সেস নেবে, তবে স্কিমার মালিকানা এবং মাইগ্রেশন আপনার দায়িত্বে থাকবে।
আরও আলোচনা এবং ব্যবহারের ক্ষেত্রে, পরিষেবা এবং ডাটাবেস পরিচালনা করুন দেখুন।
ডেটাকানেক্ট:sql:গ্রান্ট
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 | ডাটাবেসে সম্পূর্ণ সুবিধাসহ অন্তর্নির্মিত সুপারইউজার ভূমিকা। মালিকের অনুমতি ছাড়াও, এটি স্কিমা তৈরি করতে, স্কিমা ড্রপ করতে, এক্সটেনশন ইনস্টল করতে এবং অন্য যেকোনো প্রশাসনিক কাজ সম্পাদন করতে পারে। "firebasesuperuser" হিসেবে লগ ইন করে CLI-তে অ্যাক্সেস করা হয়েছে। | এক্সটেনশন ইনস্টল করার জন্য, প্রাথমিক স্কিমা তৈরি করার জন্য এবং অন্যান্য ব্যবহারকারীদের যেকোনো অনুমোদিত SQL ভূমিকা প্রদানের জন্য প্রয়োজনীয়। যদি কোনও নন-অ্যাডমিন ব্যবহারকারীর সুপারইউজার সুবিধার প্রয়োজন হয়, তাহলে মাইগ্রেশন ব্যর্থ হবে এবং ব্যবহারকারীকে ডাটাবেস অ্যাডমিনিস্ট্রেটরকে (অর্থাৎ, roles/cloudsql.admin সহ ব্যবহারকারী) বিশেষাধিকারপ্রাপ্ত SQL কমান্ডগুলি চালানোর জন্য অনুরোধ করতে হবে। | roles/cloudsql.admin ব্যবহারকারীদের জন্য অনুমোদিত এবং Firebase CLI থেকে সরাসরি অনুমোদিত হতে পারে না। |
| কমান্ড | বিবরণ | |
|---|---|---|
ফায়ারবেস ডেটাকানেক্ট: এসকিউএল: অনুদান | পতাকা/প্যারামিটার | বিবরণ |
-R, --ভূমিকা ভূমিকা | SQL ভূমিকা, যেটি প্রদান করতে হবে, এর মধ্যে যেকোনো একটি: মালিক, লেখক, অথবা পাঠক। | |
-ই, --ইমেল ইমেল ঠিকানা | কোনও ব্যবহারকারী বা পরিষেবা অ্যাকাউন্টকে ভূমিকাটি প্রদানের জন্য ইমেল করুন। | |
গ্লোবাল অপশন
নিম্নলিখিত বিশ্বব্যাপী বিকল্পগুলি সমস্ত কমান্ডের ক্ষেত্রে প্রযোজ্য:
-
--jsonঅন্যান্য টুল দ্বারা পার্সিংয়ের জন্য CLI আউটপুটকে JSON-এ স্যুইচ করে। -
--noninteractiveএবং--interactiveওভাররাইড, প্রয়োজন অনুসারে, নন-TTY পরিবেশের স্বয়ংক্রিয় সনাক্তকরণ।