ค้นหาเว็บไซต์

วิธีการติดตั้ง MongoDB 4 ใน CentOS 8


MongoDB คือกลไกฐานข้อมูล NoSQL ตามเอกสารและใช้งานทั่วไปยอดนิยม ซึ่งจัดเก็บข้อมูลในรูปแบบ JSON เป็นซอฟต์แวร์โอเพ่นซอร์สฟรีและมาพร้อมกับชุดฟีเจอร์เจ๋งๆ มากมาย เช่น การจัดเก็บไฟล์ การจำลองข้อมูล การสืบค้นแบบเฉพาะกิจ และการปรับสมดุลโหลด และอื่นๆ อีกมากมาย บริษัทบลูชิปบางแห่งที่ได้รวม MongoDB ไว้ในแอปพลิเคชันของตน ได้แก่ Adobe, Facebook, Google, อีเบย์ และ Coinbase

ในบทช่วยสอนนี้ คุณจะได้เรียนรู้วิธีการติดตั้ง MongoDB บน CentOS 8

ขั้นตอนที่ 1: เพิ่มพื้นที่เก็บข้อมูล MongoDB

เนื่องจาก MongoDB ไม่มีอยู่ในที่เก็บเริ่มต้นของ CentOS 8 เราจึงต้องเพิ่มด้วยตนเอง ขั้นแรกให้สร้างไฟล์พื้นที่เก็บข้อมูลตามที่แสดง

vi /etc/yum.repos.d/mongodb.repo

วางการกำหนดค่าด้านล่างและบันทึกไฟล์

[mongodb-org-4.2]
name=MongoDB Repository
baseurl=https://repo.mongodb.org/yum/redhat/$releasever/mongodb-org/development/x86_64/
gpgcheck=1
enabled=1
gpgkey=https://www.mongodb.org/static/pgp/server-4.2.asc

ขั้นตอนที่ 2: ติดตั้ง MongoDB ใน CentOS 8

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

dnf install mongodb-org

จากนั้น ให้เริ่มต้นและเปิดใช้งาน MongoDB เพื่อเริ่มต้นการบูตโดยเรียกใช้คำสั่งด้านล่าง

systemctl start mongod
sudo systemctl enable mongod

หากต้องการตรวจสอบสถานะของ MongoDB ให้รัน:

systemctl status mongod

หรือคุณสามารถใช้ยูทิลิตี้ netstat เพื่อยืนยันว่าบริการ Mongod กำลังรับฟังอยู่

netstat -pnltu

ยอดเยี่ยม! เราขอยืนยันว่า MongoDB เปิดใช้งานแล้ว

ขั้นตอนที่ 3: เข้าถึง MongoDB Shell

ตอนนี้คุณสามารถเข้าถึงเชลล์ของ MongoDB ได้โดยเพียงแค่ออกคำสั่ง:

mongo

คุณควรได้รับเอาต์พุตที่คล้ายกันดังที่แสดงในภาพหน้าจอด้านล่าง

การสร้างผู้ใช้ผู้ดูแลระบบ MongoDBan

ตอนนี้เรามาเปลี่ยนเกียร์และสร้างผู้ใช้ที่เป็นผู้ดูแลระบบกันดีกว่า
เป็นคำแนะนำที่ดีเสมอในการสร้างผู้ใช้ผู้ดูแลระบบที่มีสิทธิ์ระดับสูงเพื่อดำเนินงานระดับสูง หากต้องการทำเช่นนั้น ให้เข้าถึงเชลล์ของ MongoDB ก่อน:

mongo

จากนั้นสลับไปที่ผู้ดูแลระบบฐานข้อมูลโดยเรียกใช้

> use admin

ตอนนี้สร้างผู้ใช้ MongoDB ใหม่โดยเรียกใช้โค้ดด้านล่าง

> db.createUser(
 {
 user: "mongod_admin",
 pwd: "P@ssword@2019",
 roles: [ { role: "userAdminAnyDatabase", db: "admin" } ]
 }
 )

หากสำเร็จคุณควรได้ผลลัพธ์ด้านล่าง

Successfully added user: {
	"user" : "mongod_admin",
	"roles" : [
		{
			"role" : "userAdminAnyDatabase",
			"db" : "admin"
		}
	]
}

หากต้องการแสดงรายการผู้ใช้ MongoDB ที่สร้างขึ้น ให้เรียกใช้

> show users

การกำหนดค่าการรับรองความถูกต้องสำหรับ MongoDB

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

หากต้องการเปิดใช้งานการตรวจสอบสิทธิ์ ให้แก้ไขไฟล์ /lib/systemd/system/mongod.service ในส่วน [Service] ค้นหาและแก้ไขพารามิเตอร์สภาพแวดล้อมตามที่แสดง

Environment="OPTIONS= --auth -f /etc/mongod.conf"

บันทึกและออกจากไฟล์การกำหนดค่า

เพื่อให้การเปลี่ยนแปลงมีผล ให้โหลดระบบใหม่และรีสตาร์ท MongoDB

systemctl daemon-reload
systemctl restart mongod

หากคุณลองแสดงรายการผู้ใช้โดยไม่มีการรับรองความถูกต้อง คุณควรได้รับข้อผิดพลาดดังที่แสดง

ในการตรวจสอบสิทธิ์ เพียงส่งข้อมูลรับรองตามที่แสดง

> db.auth('mongod_admin', 'P@ssword@2019')

ตอนนี้คุณสามารถรันคำสั่งใดก็ได้หลังจากนั้น ลองแสดงรายชื่อผู้ใช้อีกครั้ง:

> show users

ครั้งนี้ทุกอย่างเป็นไปด้วยดีเนื่องจากมีการมอบข้อมูลรับรองการตรวจสอบสิทธิ์

เพื่อออกจากโปรแกรมฐานข้อมูลให้รัน

> exit

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