ใน MongoDB เวอร์ชัน 4.2 copydb
และcopyDatabase
wrapper ได้ถูกเลิกใช้แล้ว คู่มือ MongoDB แสดงให้เห็นว่าตอนนี้เราควรใช้และmongodump
mongorestore
แต่ฉันเรียกคำสั่ง copy จาก PHP โดยใช้ไดรเวอร์ PHP MongoDB และคำสั่ง dump และ restore เป็นคำสั่งที่ต้องรันจาก command line และไม่มี PHP เทียบเท่า ตอนนี้ฉันจะคัดลอกฐานข้อมูลโดยใช้ PHP ได้อย่างไร
1
แม้ว่าจะเป็นไปได้ที่จะเรียกใช้ mongodump / mongorestore จาก PHP ด้วยฟังก์ชั่นประเภท shell_exec ก็เป็นไปได้ยากที่จะดาวน์โหลดฐานข้อมูลทั้งหมดไปยังไคลเอนต์แล้วอัปโหลดกลับคืน
—
Alex Blex
ฉันเดาว่าฉันไม่เข้าใจขั้นตอนการทำงานของคุณ คุณเพียงต้องการสร้างการสำรองข้อมูล / เรียกคืน db บนเครื่องหรือคุณต้องการจัดทำ / ดาวน์โหลดไฟล์เดียวกันผ่านเว็บไซต์ / บริการ (ผ่าน php)
—
mrgremlin
ฉันต้องการคัดลอกฐานข้อมูลเพื่อวัตถุประสงค์ในการทดสอบ เรามีฐานข้อมูลพร้อมการตั้งค่าเริ่มต้นทั้งหมดสำหรับการทดสอบและฉันต้องการคัดลอกไปยังฐานข้อมูลการทดสอบก่อนที่จะทำการทดสอบ สิ่งนี้มักเริ่มต้นจากระยะไกลผ่านคำขอที่จัดการโดย PHP
—
Carlos Granados
เพียงชี้แจงว่าเหตุใดโซลูชั่นภายในบางอย่างจึงยอดเยี่ยม: ในระบบอย่าง Debian หรือ Alpine (ในเวอร์ชันเดิมที่ยังคงมีการจัดส่ง MongoDB) คุณต้องติดตั้งแพ็กเกจอื่นสำหรับเครื่องมือเชลล์เพิ่มเติม สิ่งเหล่านี้อาจไม่ปรากฏในทุกระบบที่มีการติดตั้ง MongoDB
—
Nico Haase