วิธีการติดตั้ง MongoDB 5.0 บน Debian 11 Bullseye


MongoDB เป็นฐานข้อมูลเอกสารข้ามแพลตฟอร์มฟรีและโอเพ่นซอร์ส ซอฟต์แวร์นี้มีลักษณะเป็นฐานข้อมูล NoSQL เครื่องมือสำหรับจัดเก็บ JSON หรือแม้แต่ฐานข้อมูลเอกสารพร้อมสคีมาที่เป็นตัวเลือก

คุณลักษณะและข้อดีบางประการ ได้แก่ :

  • สคีมาเอกสารที่ยืดหยุ่น
  • การเข้าถึงข้อมูลด้วยรหัสเนทีฟ
  • การออกแบบที่เป็นมิตรต่อการเปลี่ยนแปลง
  • การสืบค้นและการวิเคราะห์ที่มีประสิทธิภาพ
  • ปรับขนาดออกในแนวนอนได้ง่าย

ในบทช่วยสอนต่อไปนี้ คุณจะได้เรียนรู้วิธีติดตั้ง MongoDB 5.0 Community edition ล่าสุดบนเดสก์ท็อปหรือเซิร์ฟเวอร์ Debian 11 Bullseye โดยนำเข้าที่เก็บชุมชนและหลังจากติดตั้งซอฟต์แวร์ที่ปลอดภัย

ติดตั้งแพ็คเกจที่จำเป็น

ขั้นตอนแรกคือการติดตั้งการพึ่งพาที่จำเป็นระหว่างการติดตั้ง ใช้คำสั่งต่อไปนี้เพื่อติดตั้งหรือตรวจสอบว่ามีอยู่

sudo apt install dirmngr gnupg apt-transport-https software-properties-common ca-certificates curl -y

นำเข้าที่เก็บ MongoDB

ก่อนที่คุณจะติดตั้งชุดเผยแพร่ชุมชนล่าสุดของ MongoDB 5.0 ซีรีส์ คุณจะต้องติดตั้งคีย์ MongoDB GPG ที่จำเป็นพร้อมสิ่งต่อไปนี้



sudo wget -O- https://www.mongodb.org/static/pgp/server-5.0.asc | gpg --dearmor | sudo tee /usr/share/keyrings/mongodb.gpg

ถัดไป คุณจะเพิ่มที่เก็บ

echo 'deb [signed-by=/usr/share/keyrings/mongodb.gpg] http://repo.mongodb.org/apt/debian buster/mongodb-org/5.0 main' | sudo tee /etc/apt/sources.list.d/mongodb-org-5.0.list

หากคุณสังเกตเห็นว่าคำสั่งมี Buster แทนที่จะเป็น Bullseye อย่าตกใจ MongoDB Community Edition ไม่มีที่เก็บแยกต่างหากสำหรับ Debian Bullseye อย่างไรก็ตาม การทำงานและการพัฒนาอย่างต่อเนื่องใน Buster ทำงานและเข้ากันได้

ก่อนทำการติดตั้ง ควรรีเฟรช apt-cache ของคุณ

sudo apt-get update

ติดตั้ง MongoDB 5.0

เมื่อคุณนำเข้าที่เก็บแล้ว คุณสามารถติดตั้งซอฟต์แวร์ MongoDB ได้ การติดตั้งจะทำการติดตั้งดังต่อไปนี้

แพ็คเกจต่อไปนี้จะถูกติดตั้งเป็นส่วนหนึ่งของแพ็คเกจ MongoDB-org

  • mongodb-org-เซิร์ฟเวอร์ – ภูตเซิร์ฟเวอร์ MongoDB
  • mongodb-org-mongos – MongoDB ongos ภูต
  • monodb-org-shell – เปลือก MongoDB
  • monodb-org-เครื่องมือ – ประกอบด้วยเครื่องมือสำหรับการนำเข้า ส่งออก และยูทิลิตี้อื่น ๆ

ในเทอร์มินัลของคุณ ให้ใช้คำสั่งต่อไปนี้เพื่อเริ่มต้น



sudo apt install mongodb-org

ตัวอย่างผลลัพธ์:

วิธีการติดตั้ง MongoDB 5.0 บน Debian 11 Bullseye

ประเภท Y, จากนั้นกดปุ่ม ใส่รหัส เพื่อดำเนินการติดตั้งให้เสร็จสิ้น

ในการเริ่มและเปิดใช้งาน MongoDB ให้ใช้คำสั่งต่อไปนี้

sudo systemctl enable mongod --now

ตรวจสอบการติดตั้งโดยทดสอบการเชื่อมต่อฐานข้อมูลและการตรวจสอบเวอร์ชันด้วยคำสั่งเทอร์มินัลต่อไปนี้

mongo --eval 'db.runCommand({ connectionStatus: 1 })'

ตัวอย่างผลลัพธ์:

วิธีการติดตั้ง MongoDB 5.0 บน Debian 11 Bullseye

ตรวจสอบสถานะบริการ MongoDB 5.0

ก่อนที่คุณจะดำเนินการต่อ ขอแนะนำให้ตรวจสอบสถานะของ MongoDB แม้ว่าคุณจะทำการทดสอบการเชื่อมต่อเพื่อให้แน่ใจว่าทุกอย่างทำงานได้ดี



systemctl status mongod

ตัวอย่าง:

วิธีการติดตั้ง MongoDB 5.0 บน Debian 11 Bullseye

คำสั่งต่อไปนี้จะให้การดำเนินการ systemd ในการจัดการบริการ MongoDB

ในการเริ่ม MongoDB:

sudo systemctl start mongod

วิธีหยุด MongoDB:

sudo systemctl stop mongod

วิธีเปิดใช้งาน MongoDB เมื่อเริ่มต้นระบบ:

sudo systemctl enable mongod

วิธีปิดการใช้งาน MongoDB เมื่อเริ่มต้นระบบ:



sudo systemctl disable mongod

ในการเริ่มบริการ MongoDB ใหม่:

sudo systemctl restart mongod

กำหนดค่า MongoDB Security

ถัดไปในการกำหนดค่า MongoDB คือความจำเป็นในการแก้ไขไฟล์การกำหนดค่า MongoDB ชื่อ mongod.conf ซึ่งตั้งอยู่ใน / etc ไดเร็กทอรี. คุณจะยกเลิกความคิดเห็นในส่วนความปลอดภัย มิฉะนั้น ผู้ใช้ใดๆ ในระบบจะเข้าถึงฐานข้อมูลและดำเนินการใดๆ ซึ่งจะทำให้ฐานข้อมูลมีโอกาสถูกโจมตีมากขึ้น

เปิดไฟล์ mongod.conf โดยใช้โปรแกรมแก้ไขนาโน

sudo nano /etc/mongod.conf

ถัดไป uncomment บรรทัดต่อไปนี้และเพิ่ม การอนุญาต: เปิดใช้งาน ดังต่อไปนี้

security:
   authorization: enabled

ตัวอย่าง:

วิธีการติดตั้ง MongoDB 5.0 บน Debian 11 Bullseye

เมื่อเสร็จแล้ว ให้ทำการรีสตาร์ทบริการ MongoDB โดยใช้คำสั่ง systemctl ต่อไปนี้



sudo systemctl restart mongod

สร้างผู้ดูแลระบบบน MongoDB

ตามค่าเริ่มต้นบน MongoDB บัญชีผู้ดูแลระบบจะไม่ปลอดภัย ซึ่งเป็นสาเหตุที่เปิดใช้งานการให้สิทธิ์ ตอนนี้ คุณต้องสร้างบัญชีเพื่อเข้าถึงฐานข้อมูลผู้ดูแลระบบอย่างปลอดภัย

mongo

ตอนนี้ในเชลล์ MongoDB ให้เชื่อมต่อกับฐานข้อมูลผู้ดูแลระบบ

use admin

ตัวอย่างผลลัพธ์:

switched to db admin

ถัดไป พิมพ์ต่อไปนี้เพื่อสร้างบัญชีผู้ใช้ Mongo ใหม่ สำหรับบทช่วยสอน จะมีการสร้างผู้ใช้ mongouser

db.createUser(
   {
     user: "mongouser", 
     pwd: "PASSWORDCHANGE", 
     roles: [ { role: "userAdminAnyDatabase", db: "admin" } ]
   }
 )

จำไว้ว่าให้เปลี่ยน pwd: “เปลี่ยนรหัสผ่าน”, อย่าคัดลอกโดยสุ่มสี่สุ่มห้าโดยไม่ต้องแก้ไขก่อนและเปลี่ยนชื่อผู้ดูแลระบบหากต้องการ

ตัวอย่างผลลัพธ์หากสำเร็จ:



วิธีการติดตั้ง MongoDB 5.0 บน Debian 11 Bullseye

ตอนนี้คุณสามารถออกจาก MongoDB ได้ด้วยวิธีต่อไปนี้

quit()

ถัดไป ทดสอบ MongoDB ด้วยบัญชีใหม่ที่คุณสร้างสถานะการเชื่อมต่อ

mongo --port 27017 --authenticationDatabase "admin" -u "mongouser" -p

ตัวอย่างผลลัพธ์:

วิธีการติดตั้ง MongoDB 5.0 บน Debian 11 Bullseye

ผลลัพธ์ข้างต้นระบุว่าผู้ใช้ พังพอน ได้เชื่อมต่อกับฐานข้อมูลผู้ดูแลระบบ แน่นอนว่านี่เป็นเพียงการทดสอบ คุณสามารถเปลี่ยนชื่อฐานข้อมูลและเปลี่ยนชื่อผู้ใช้ตามที่คุณต้องการ

เพื่อออกจาก MongoDB ด้วยสิ่งต่อไปนี้

quit()

วิธีอัปเดต MongoDB

การอัปเดตเสร็จสิ้นด้วยคำสั่งเทอร์มินัลมาตรฐาน sudo apt update and upgrade



sudo apt update && sudo apt upgrade 

เวอร์ชันใหม่มีให้เห็นบ่อยครั้ง เนื่องจากคุณใช้ Community Edition อย่าลืมเก็บสแน็ปช็อตของฐานข้อมูลของคุณไว้หากมีสิ่งผิดปกติ โดยเฉพาะอย่างยิ่งในสภาพแวดล้อมที่ใช้งานจริง

วิธีลบ (ถอนการติดตั้ง) MongoDB

หากต้องการลบ MongoDB ให้ใช้คำสั่งต่อไปนี้

sudo apt remove mongodb-org

การดำเนินการนี้จะลบ MongoDB ออกจากระบบของคุณ อย่างไรก็ตาม ยังคงมีแพ็คเกจจำนวนมากที่ไม่ต้องการอีกต่อไป หากต้องการลบทุกอย่าง ให้ใช้คำสั่งต่อไปนี้แทน

sudo apt autoremove mongodb-org

ขั้นตอนต่อไปคือ ถ้าคุณไม่ต้องการใช้อีกต่อไป ตัวอย่างเช่น ที่เก็บ MongoDB 5.0 series คุณสามารถลบสิ่งนี้ได้อย่างปลอดภัยโดยใช้คำสั่งต่อไปนี้

sudo rm /etc/apt/sources.list.d/mongodb-org-5.0.list

ตอนนี้คุณสามารถติดตั้งสาขาสำรองของที่เก็บ MongoDB ได้หากต้องการ

ความคิดเห็นและข้อสรุป

ประโยชน์หลักประการหนึ่งที่ MongoDB มีเหนือ MySQL คือความสามารถในการจัดการข้อมูลที่ไม่มีโครงสร้างจำนวนมาก และทำงานเร็วขึ้นอย่างน่าอัศจรรย์ ความนิยมของ Mongo กำลังเพิ่มขึ้นและควรได้รับการพิจารณาสำหรับโครงการพัฒนาเชิงปฏิบัติที่ต้องใช้ฐานข้อมูล





ไม่ใช่สิ่งที่คุณกำลังมองหา? ลองค้นหาบทช่วยสอนเพิ่มเติม

แสดงความคิดเห็น