Firebase CLI เป็นเครื่องมือที่ช่วยให้คุณจัดการและกำหนดค่าผลิตภัณฑ์และบริการของ Firebase จากบรรทัดคำสั่งได้
CLI มีคำสั่งที่ใช้เพื่อทำงานต่างๆ ได้ เช่น สร้างData Connectโปรเจ็กต์Data Connectใหม่ เริ่มต้นไดเรกทอรีการทำงานในเครื่องที่เกี่ยวข้อง ตั้งค่าData ConnectโปรแกรมจำลองData Connect แสดงรายการทรัพยากร สร้าง SDK ของไคลเอ็นต์ และอื่นๆ
คำสั่งการตั้งค่า
เพิ่ม Data Connect ไปยังโปรเจ็กต์ Firebase
firebase init
ใช้ firebase init เพื่อตั้งค่าการกำหนดค่าโปรเจ็กต์ในเครื่องใหม่ เวิร์กโฟลว์นี้
จะสร้างหรืออัปเดตไฟล์กำหนดค่า Firebase ใน
ไดเรกทอรีของคุณ
firebase initโฟลว์ firebase init จะแนะนําขั้นตอนการตั้งค่าบริการและฐานข้อมูล
รวมถึงการติดตั้งโปรแกรมจําลอง Data Connect และ
การกําหนดค่า SDK ที่สร้างขึ้น (ไม่บังคับ)
การตั้งค่าบริการและฐานข้อมูล
หากเลือก dataconnect สำหรับการตั้งค่าผลิตภัณฑ์ CLI จะแจ้งให้คุณระบุชื่อและตำแหน่งบริการใหม่ รวมถึงเลือกว่าจะลิงก์อินสแตนซ์ Cloud SQL for PostgreSQL ที่มีอยู่หรือสร้างอินสแตนซ์ใหม่
หากมีการลิงก์อินสแตนซ์ที่มีอยู่ CLI จะตรวจสอบการตั้งค่าที่เข้ากันได้ เช่น การตรวจสอบสิทธิ์ IAM และที่อยู่ IP สาธารณะ
การตั้งค่า Local Emulator Suite
ขั้นตอน CLI จะเสนอให้ตั้งค่าโปรแกรมจำลอง ซึ่งรวมถึงโปรแกรมจำลอง Data Connect
Data Connect คำสั่งโปรแกรมจำลอง
เริ่มโปรแกรมจำลอง Data Connect
โปรแกรมจำลอง:เริ่ม/เรียกใช้
firebase emulators:start/execใช้Local Emulator Suiteเวอร์ชันของโปรแกรมจำลอง Data Connect
ในโหมดอินเทอร์แอกทีฟกับ start หรือโหมดที่ไม่ใช่แบบอินเทอร์แอกทีฟที่ขับเคลื่อนด้วยสคริปต์กับ exec
ส่งออกและนำเข้าข้อมูล PostgreSQL ในเครื่อง
คุณสามารถส่งออกข้อมูลที่จัดเก็บไว้ในอินสแตนซ์ฐานข้อมูลในเครื่องและนำเข้าข้อมูลระหว่างการทำซ้ำการพัฒนาและการทดสอบเพื่อรองรับการสร้างต้นแบบและการทดสอบในเครื่อง รวมถึงการผสานรวมอย่างต่อเนื่อง
ระบบจะจัดเก็บการส่งออกเป็นสแนปชอตของฐานข้อมูล PostgreSQL ในเครื่อง
Data Connect มี 3 วิธีในการส่งออก/นำเข้า ดังนี้
- การส่งออก/นำเข้าอัตโนมัติที่กำหนดค่าไว้ใน
firebase.jsonเพื่อให้ การสำรองข้อมูลสแนปชอตเมื่อปิดและเปิดโปรแกรมจำลอง - การส่งออก/นำเข้าด้วยตนเองโดยใช้ CLI
- การส่งออก/นำเข้าด้วยตนเองโดยใช้อินเทอร์เฟซส่วนขยาย VS Code
การส่งออกและนำเข้าอัตโนมัติที่กำหนดค่าไว้ใน firebase.json
หากต้องการสำรองข้อมูลระหว่างเซสชันการพัฒนา ให้ระบุตำแหน่งการสำรองข้อมูลอัตโนมัติ
ในระหว่างลำดับ firebase init ระบบจะจัดเก็บตำแหน่งนี้ไว้ใน
firebase.json ในช่อง emulators.dataconnect.dataDir ระบบจะบันทึกการเปลี่ยนแปลงข้อมูล
ที่คุณทำไว้ที่นี่โดยอัตโนมัติระหว่างการเรียกใช้โปรแกรมจำลอง ดังนั้นจึงมีประโยชน์
ในระหว่างการทดสอบและการสำรวจในเครื่อง
การส่งออกด้วยตนเอง: emulators:export และ emulators:start/exec --import
ขณะที่Data Connectโปรแกรมจำลองทำงาน ให้เรียกใช้คำสั่ง firebase emulators:export ในเทอร์มินัลแยกต่างหากเพื่อบันทึกสแนปชอตของข้อมูล
จากนั้นคุณจะเริ่มโปรแกรมจำลองจาก Snapshot นั้นได้โดยใช้แฟล็ก --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
ใน UI ของส่วนขยาย VS Code ขณะที่โปรแกรมจำลองทำงานอยู่ ให้ใช้ปุ่มส่งออกข้อมูลโปรแกรมจำลองเพื่อส่งออกข้อมูลเพื่อส่งออกเนื้อหาฐานข้อมูลปัจจุบัน
ตำแหน่งการส่งออกเริ่มต้นคือไดเรกทอรี exportedData ที่
รูทของไดเรกทอรีโปรเจ็กต์
คุณสามารถนำเข้าข้อมูลนี้ได้โดยใช้ CLI ตามที่อธิบายไว้ในส่วนก่อนหน้า นอกจากนี้ คุณยังนำเข้าข้อมูลนี้ก่อนเริ่มโปรแกรมจำลองผ่าน VS Code ได้โดย คลิกลิงก์กำหนดค่าโปรแกรมจำลองและตั้งค่าเส้นทางการนำเข้า
คำสั่งการจัดการสคีมาและตัวเชื่อมต่อ
ส่วนนี้ประกอบด้วยข้อมูลอ้างอิง CLI สำหรับคำสั่งที่คุณใช้เพื่อจัดการ สคีมาและตัวเชื่อมต่อ
สำหรับกรณีการใช้งานและแนวทางปฏิบัติแนะนำที่เกี่ยวข้องกับคำสั่งเหล่านี้ โปรดดูคู่มือการจัดการสคีมาและตัวเชื่อมต่อ
ติดตั้งใช้งานสคีมาและตัวเชื่อมต่อ
ทำให้ใช้งานได้
firebase deployคำสั่งนี้จะทำให้ทรัพยากรสำหรับบริการ Data Connect ที่จัดทำดัชนีใน firebase.json ใช้งานได้ การย้ายข้อมูลสคีมา และการอัปเดตตัวเชื่อมต่อจะดำเนินการหากจำเป็น
| คำสั่ง | คำอธิบาย | |
|---|---|---|
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 CLI จะเปรียบเทียบสคีมา SQL
ก่อนที่จะทำการอัปเดต นอกจากนี้ คุณยังทำการเปรียบเทียบ
และอัปเดตได้โดยตรงด้วยชุดคำสั่ง dataconnect:sql
dataconnect:sql:diff
firebase dataconnect:sql:diffคำสั่งนี้จะเปรียบเทียบสคีมาในเครื่องสำหรับบริการกับสคีมาปัจจุบันของฐานข้อมูล Cloud SQL ที่เกี่ยวข้อง โดยจะพิมพ์คำสั่งที่จะเรียกใช้ เพื่อย้ายข้อมูลฐานข้อมูลไปยังสคีมาใหม่
| คำสั่ง | คำอธิบาย | |
|---|---|---|
firebase dataconnect:sql:diff |
Flag/พารามิเตอร์ | คำอธิบาย |
serviceId |
ระบุบริการ หากไม่ระบุ ให้พิมพ์ diff สำหรับบริการทั้งหมดใน firebase.json | |
dataconnect:sql:migrate
firebase dataconnect:sql:migrateคำสั่งนี้ใช้การเปลี่ยนแปลงสคีมาในเครื่องกับฐานข้อมูล Cloud SQL ของบริการ
เมื่อตั้งค่าโปรเจ็กต์ Data Connect ใหม่ในเครื่องด้วยไฟล์ dataconnect.yaml เริ่มต้น ลักษณะการทำงานของคำสั่ง dataconnect:sql:migrate
คือการแจ้งให้คุณทำการเปลี่ยนแปลงที่จำเป็น จากนั้นจึงแจ้งให้ทำการเปลี่ยนแปลงที่ไม่บังคับ
ก่อนที่จะดำเนินการเปลี่ยนแปลง คุณสามารถแก้ไขลักษณะการทำงานนี้ให้รวมหรือละเว้นการเปลี่ยนแปลงที่ไม่บังคับได้เสมอโดยการอัปเดตdataconnect.yaml
การกำหนดค่าตามที่อธิบายไว้ในย้ายข้อมูลสคีมาในโหมดเข้มงวดหรือโหมดที่เข้ากันได้
ในสภาพแวดล้อมแบบอินเทอร์แอกทีฟ CLI จะแสดงคำสั่ง SQL ของการย้ายข้อมูลแต่ละรายการ
(และระบุว่าเป็นการทำลายข้อมูลหรือไม่) และแจ้งให้คุณทำการเปลี่ยนแปลงที่ต้องการ
การส่งผ่านแฟล็ก --force จะเทียบเท่ากับการยอมรับพรอมต์ทั้งหมด
ในสภาพแวดล้อมที่ไม่มีการโต้ตอบ ให้ทำดังนี้
- หากไม่มี
--forceระบบจะทำการเปลี่ยนแปลงแบบไม่ทำลายเท่านั้น หากมีการเปลี่ยนแปลงที่ทำลายล้าง CLI จะยกเลิกโดยไม่มีการเปลี่ยนแปลงใดๆ - เมื่อใช้
--forceระบบจะทำการเปลี่ยนแปลงทั้งหมด หากมีการเปลี่ยนแปลงที่ทำลายล้าง ระบบจะพิมพ์การเปลี่ยนแปลงเหล่านั้นและแจ้งให้คุณทราบว่าต้องการดำเนินการต่อหรือไม่ เว้นแต่จะระบุ--force
| คำสั่ง | คำอธิบาย | |
|---|---|---|
firebase dataconnect:sql:migrate |
รายงาน | คำอธิบาย |
serviceId |
ย้ายข้อมูลฐานข้อมูลสำหรับบริการที่ระบุ ระบบจะอนุมาน serviceId หากโปรเจ็กต์มีบริการเพียงรายการเดียว | |
--force |
ยอมรับพรอมต์โดยอัตโนมัติ | |
เช่นเดียวกับ--only อื่นๆ คุณระบุบริการหลายอย่างได้โดยคั่นด้วยเครื่องหมายคอมมา
ย้ายข้อมูลสคีมาในโหมดเข้มงวดหรือโหมดที่เข้ากันได้
Data Connectการย้ายข้อมูลสคีมามีโหมดการตรวจสอบสคีมา 2 โหมด ได้แก่ เข้มงวดและเข้ากันได้ การตรวจสอบโหมดเข้มงวดกำหนดให้สคีมาฐานข้อมูลต้องตรงกับสคีมาแอปพลิเคชันอย่างแน่นอนก่อนจึงจะสามารถติดตั้งใช้งานสคีมาแอปพลิเคชันได้ การตรวจสอบโหมดที่เข้ากันได้กำหนดให้สคีมาฐานข้อมูลต้องเข้ากันได้กับสคีมาแอปพลิเคชัน ซึ่งหมายความว่าองค์ประกอบในฐานข้อมูลที่สคีมาแอปพลิเคชันไม่ได้ใช้จะไม่มีการแก้ไข
โหมดการตรวจสอบสคีมาและแนวทางปฏิบัติแนะนำสำหรับการย้ายข้อมูลสคีมาเหล่านี้ อธิบายไว้ในคู่มือการจัดการสคีมาและตัวเชื่อมต่อ
โหมดการตรวจสอบจะกำหนดโดยใช้คีย์ schemaValidation ในไฟล์
dataconnect.yaml หากไม่ได้ระบุ schemaValidation ไว้ CLI จะใช้การเปลี่ยนแปลงที่เข้ากันได้และแจ้งให้คุณทราบก่อนที่จะดำเนินการเปลี่ยนแปลงที่เข้มงวด ดูข้อมูลอ้างอิงการกำหนดค่า
จัดการการเปลี่ยนแปลงในเครื่องมือเชื่อมต่อ
เมื่อเรียกใช้ firebase deploy CLI จะเริ่ม
อัปเดตตัวเชื่อมต่อที่เกี่ยวข้อง CLI จะวิเคราะห์การเปลี่ยนแปลงของตัวเชื่อมต่อแต่ละตัว
และออกชุดข้อความการประเมินเกี่ยวกับการเปลี่ยนแปลงตัวเชื่อมต่อที่
อาจทําให้เกิดลักษณะการทํางานที่ไม่คาดคิด (ข้อความอยู่ในระดับคําเตือน) หรือการหยุดทํางาน (ข้อความอยู่ในระดับการหยุดทํางาน) ในโค้ดฝั่งไคลเอ็นต์เวอร์ชันก่อนหน้า
| การประเมินผลกระทบ | สถานการณ์ |
|---|---|
| ระดับคำเตือน (ใช้ได้กับ Wire แต่อาจเปลี่ยนลักษณะการทำงาน) |
|
| การเปลี่ยนแปลงที่ทำให้เกิดข้อขัดข้อง (สายไฟที่ใช้ร่วมกันไม่ได้ อาจทำให้ไคลเอ็นต์ใช้งานไม่ได้) |
|
| ระดับการหยุดทำงาน (สายไฟใช้ร่วมกันไม่ได้ จะทำให้ไคลเอ็นต์หยุดทำงาน) |
|
ในสภาพแวดล้อมแบบอินเทอร์แอกทีฟ CLI จะแสดงการประเมินตัวเชื่อมต่อแต่ละรายการและ
แจ้งให้คุณทำการเปลี่ยนแปลงที่ต้องการ การส่งผ่านแฟล็ก --force
เทียบเท่ากับการยอมรับการประเมินทั้งหมด
ในสภาพแวดล้อมที่ไม่มีการโต้ตอบ
- หากมีการประเมินระดับคำเตือนเท่านั้น (การเปลี่ยนแปลงลักษณะการทำงานที่อาจเกิดขึ้น) ระบบจะ ติดตั้งใช้งานตัวเชื่อมต่อทั้งหมดและบันทึกคำเตือนไปยังเทอร์มินัล
- หากมีการประเมินระดับการหยุดทำงาน ระบบจะไม่ติดตั้งใช้งานตัวเชื่อมต่อ
และจะบันทึกคำเตือนไปยังเทอร์มินัล คุณสามารถลบล้างด้วย
--forceFlag
ตรวจสอบรหัสการให้สิทธิ์
Data Connect ช่วยให้คุณตรวจสอบกลยุทธ์การให้สิทธิ์ได้โดยการวิเคราะห์โค้ดตัวเชื่อมต่อเมื่อคุณ
ติดตั้งใช้งานในเซิร์ฟเวอร์โดยใช้ firebase deploy จาก Firebase CLI คุณใช้การตรวจสอบนี้เพื่อช่วยตรวจสอบโค้ดเบสได้
เมื่อคุณติดตั้งใช้งานตัวเชื่อมต่อ CLI จะแสดงผลการประเมินสำหรับโค้ดการดำเนินการที่มีอยู่ ที่แก้ไขแล้วและโค้ดการดำเนินการใหม่ในตัวเชื่อมต่อ
สำหรับการดำเนินการที่แก้ไขและใหม่ CLI จะแสดงคำเตือนและแจ้งให้คุณยืนยันเมื่อใช้ระดับการเข้าถึงบางอย่างในการดำเนินการใหม่ หรือเมื่อแก้ไขการดำเนินการที่มีอยู่เพื่อใช้ระดับการเข้าถึงเหล่านั้น
คำเตือนและข้อความแจ้งจะเกิดขึ้นเสมอในกรณีต่อไปนี้
PUBLIC
และคำเตือนและข้อความแจ้งจะปรากฏในระดับการเข้าถึงต่อไปนี้เมื่อคุณไม่ได้เพิ่มด้วยตัวกรองโดยใช้ auth.uid
USERUSER_ANONUSER_EMAIL_VERIFIED
ดูข้อมูลเพิ่มเติมเกี่ยวกับการให้สิทธิ์ได้ที่คู่มือการให้สิทธิ์และการรับรอง
คำสั่ง SDK
สร้าง SDK
dataconnect:sdk:generate
firebase dataconnect:sdk:generateคำสั่งนี้จะสร้าง SDK ที่พิมพ์แล้วซึ่งประกาศไว้ใน connector.yaml
ดูคำแนะนำในการทำงานกับ Web SDK Android SDK และ iOS SDK ด้วย
| คำสั่ง | คำอธิบาย | |
|---|---|---|
firebase dataconnect:sdk:generate |
รายงาน | คำอธิบาย |
--ดู |
ช่วยให้กระบวนการทำงานต่อไปและสร้าง SDK ใหม่ทุกครั้งที่คุณบันทึก
การเปลี่ยนแปลงในไฟล์สคีมาและตัวเชื่อมต่อ GQL หากสร้างไม่สำเร็จ ระบบจะพิมพ์ข้อผิดพลาดไปยัง stdout, โค้ดที่สร้างขึ้น จะไม่เปลี่ยนแปลง และคำสั่งจะทำงานต่อไป |
|
--only connectorId:platform |
สร้าง SDK สำหรับแพลตฟอร์มและตัวเชื่อมต่อเดียวเท่านั้น | |
คุณส่งค่าที่คั่นด้วยคอมมาได้โดยใช้–only
firebase dataconnect:sdk:generate –-only connector1, connector1:kotlinคำสั่งการจัดการ Cloud SQL
ให้สิทธิ์บทบาท SQL สำหรับ Cloud SQL
Data Connect ทำงานบนอินสแตนซ์ PostgreSQL ของคุณเองที่โฮสต์ใน Cloud SQL คำสั่งบทบาท SQL ช่วยให้คุณจัดการสิทธิ์ในตารางฐานข้อมูลได้
dataconnect:sql:setup
firebase dataconnect:sql:setupคำสั่งนี้จะกำหนดค่าสิทธิ์เริ่มต้นและสิทธิ์ส่วนกลางสำหรับตารางในฐานข้อมูล
ขั้นตอนการจัดสรรและการจัดการฐานข้อมูลเริ่มต้นจะถือว่าโปรเจ็กต์ของคุณ
ใช้ฐานข้อมูลใหม่ (Greenfield) และเมื่อคุณเรียกใช้ firebase deploy
Data Connect จะแสดงการเปลี่ยนแปลงสคีมาของฐานข้อมูลที่จะดำเนินการ และ
ทำการย้ายข้อมูลหลังจากที่คุณอนุมัติ หากต้องการใช้โฟลว์นี้
dataconnect:sql:setup จะแจ้งให้คุณให้สิทธิ์ ซึ่งรวมถึงความเป็นเจ้าของสคีมา superuser
สำหรับฐานข้อมูลที่มีอยู่ (Brownfield) คุณอาจมีเวิร์กโฟลว์ของตัวเองสำหรับ
การย้ายข้อมูลสคีมาและต้องการรักษาสิทธิ์ความเป็นเจ้าของสคีมาด้วยตนเอง หากต้องการใช้โฟลว์นี้ ให้ปฏิเสธที่dataconnect:sql:setup
พรอมต์ที่ถามว่า Data Connect ควรจัดการการย้ายข้อมูล SQL ให้คุณหรือไม่
หากคุณปฏิเสธ Data Connect จะมีสิทธิ์เข้าถึงตารางฐานข้อมูลของคุณเพียงreadและ
writeเท่านั้น แต่คุณยังคงต้องรับผิดชอบในการเป็นเจ้าของสคีมาและการย้ายข้อมูล
ดูการสนทนาและกรณีการใช้งานเพิ่มเติมได้ที่จัดการบริการและฐานข้อมูล
dataconnect:sql:grant
firebase dataconnect:sql:grantในบางกรณี คุณอาจต้องการเข้าถึงฐานข้อมูลโดยตรง เพื่อค้นหาหรืออัปเดตข้อมูลที่แอป Data Connect สร้างขึ้น โดยคุณจะต้องมอบบทบาทใดบทบาทหนึ่งที่กำหนดไว้ในส่วนนี้ ให้กับผู้ใช้หรือบัญชีบริการที่ต้องการ
ดูรายละเอียดเกี่ยวกับบทบาทที่ได้รับได้ที่บทบาทผู้ใช้ PostgreSQL
| บทบาท | บทบาท SQL | สิทธิ์ | การใช้งาน | ให้สิทธิ์ได้ |
|---|---|---|---|---|
| ผู้อ่าน | 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 |
บทบาทผู้ใช้ขั้นสูงในตัวที่มีสิทธิ์เต็มรูปแบบในฐานข้อมูล นอกจากสิทธิ์ของเจ้าของแล้ว ยังสร้างสคีมา ทิ้งสคีมา ติดตั้งส่วนขยาย และดำเนินงานด้านการดูแลระบบอื่นๆ ได้ด้วย เข้าถึงได้ใน CLI โดยการเข้าสู่ระบบในฐานะ "firebasesuperuser" |
จำเป็นสำหรับการติดตั้งส่วนขยาย การสร้างสคีมาเริ่มต้น และการให้บทบาท SQL ที่ให้สิทธิ์ได้แก่ผู้ใช้รายอื่น หากผู้ใช้ที่ไม่ใช่ผู้ดูแลระบบต้องการสิทธิ์ระดับผู้ใช้ขั้นสูง การย้ายข้อมูลจะไม่สำเร็จและแจ้งให้ผู้ใช้ขอให้ผู้ดูแลฐานข้อมูล (เช่น ผู้ใช้ที่มี roles/cloudsql.admin) เรียกใช้คำสั่ง SQL ที่มีสิทธิ์ |
มอบให้แก่ผู้ใช้ที่มี roles/cloudsql.admin และไม่สามารถมอบให้โดยตรงจาก Firebase CLI |
| คำสั่ง | คำอธิบาย | |
|---|---|---|
firebase dataconnect:sql:grant |
Flag/พารามิเตอร์ | คำอธิบาย |
-R, --role role |
บทบาท SQL ที่จะให้สิทธิ์ ซึ่งได้แก่ เจ้าของ ผู้เขียน หรือผู้อ่าน | |
-E, --email email_address |
อีเมลสำหรับผู้ใช้หรือบัญชีบริการที่จะมอบบทบาทให้ | |
ตัวเลือกส่วนกลาง
ตัวเลือกส่วนกลางต่อไปนี้ใช้กับคำสั่งทั้งหมด
--jsonจะเปลี่ยนเอาต์พุต CLI เป็น JSON เพื่อให้เครื่องมืออื่นๆ แยกวิเคราะห์ได้--noninteractiveและ--interactiveจะลบล้างการตรวจหา สภาพแวดล้อมที่ไม่ใช่ TTY โดยอัตโนมัติตามความจำเป็น