ติดตั้ง MongoDB4.2 บน CentOS7
ข้อมูลอ้างอิง
เว็บไซต์อย่างเป็นทางการ คู่มือผลิตภัณฑ์ NoSQLเพิ่มไฟล์ REPO
ใช้ vi หรือ vim เพื่อแก้ไขไฟล์ /etc/yum.repos.d/mongodb-enterprise.repo คัดลอกเนื้อหาต่อไปนี้ไปยังไฟล์จากนั้นบันทึกและออก ในตัวอย่างมีการติดตั้งเวอร์ชัน 4.2 เวอร์ชันล่าสุดคือ 4.4 หากคุณต้องการติดตั้งเวอร์ชันล่าสุดโปรดแก้ไข 4.2 เป็น 4.4 ในตัวอย่าง
[mongodb-enterprise]
name=MongoDB Enterprise Repository
baseurl=https://repo.mongodb.com/yum/redhat/$releasever/mongodb-enterprise/4.2/$basearch/
gpgcheck=1
enabled=1
gpgkey=https://www.mongodb.org/static/pgp/server-4.2.asc
ดำเนินการติดตั้งและเริ่มบริการ
yum install -y mongodb-enterprise
systemctl enable mongod
systemctl start mongod
สร้างบัญชีผู้ดูแลระบบ
Mongodb เชื่อมต่อโดยไม่ระบุตัวตนตามค่าเริ่มต้นหากเราต้องการเปิดใช้งานการตรวจสอบการเข้าสู่ระบบก่อนอื่นเราต้องสร้างบัญชีเข้าสู่ระบบและให้สิทธิ์ในสถานะการเชื่อมต่อแบบไม่ระบุตัวตน หากคุณเปิดการยืนยันการเข้าสู่ระบบโดยตรงโดยไม่ต้องสร้างบัญชีก่อนเราจะไม่สามารถเชื่อมต่อกับบริการ mongodb ได้ ในตัวอย่างต่อไปนี้เราสร้างบัญชีด้วยบัญชี my_account และรหัสผ่านของ my_password และอนุญาตให้เป็นผู้ดูแลระบบฐานข้อมูล
use admin;
db.createUser({user:"my_account",pwd:"my_password",roles:[{role:"userAdminAnyDatabase",db:"admin"},"readWriteAnyDatabase"]});
exit
แก้ไขไฟล์การกำหนดค่าและเปิดใช้งานการตรวจสอบการเข้าสู่ระบบ
ใช้ vi หรือ vim เพื่อแก้ไข /etc/mongod.conf แก้ไข IP และพอร์ตที่ถูกผูกไว้จากนั้นเปิดใช้งานการพิสูจน์ตัวตนล็อกอิน สำหรับรายละเอียดโปรดดูตัวอย่างต่อไปนี้
net:
port: 27017
bindIp: 0.0.0.0
security:
authorization: enabled
เริ่มบริการใหม่และตรวจสอบว่าการปรับเปลี่ยนมีผล
หลังจากเริ่มบริการใหม่เราจะเชื่อมต่อกับ mongodb โปรดทราบว่าสามารถสร้างการเชื่อมต่อได้สำเร็จในขณะนี้เมื่อเราดำเนินการคำสั่งเราจะแจ้งให้ทำการอนุญาต นั่นหมายความว่าเราได้เปิดใช้งานการอนุญาตการเข้าสู่ระบบสำเร็จแล้วต่อไปเราใช้บัญชีที่เราเพิ่งสร้างขึ้นสำหรับการอนุญาตหลังจากการอนุญาตสำเร็จเราสามารถดำเนินการใด ๆ กับฐานข้อมูลได้ อ้างอิงถึงตัวอย่างด้านล่างสำหรับคำสั่งที่ใช้
systemctl restart mongod
mongo
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
use admin;
db.auth('my_account','my_password');
สร้างข้อมูลของคุณเอง
mongodb ไม่จำเป็นต้องดำเนินการคำสั่งเพื่อสร้างฐานข้อมูลสามารถสร้างโดยอัตโนมัติโดยใช้ชื่อฐานข้อมูลที่ไม่มีอยู่โดยตรง โดยปกติเราไม่แนะนำให้ใช้บัญชีผู้ดูแลระบบเพื่อเชื่อมต่อกับฐานข้อมูลดังนั้นเราจึงจำเป็นต้องสร้างบัญชีที่เป็นของฐานข้อมูลใหม่อีกครั้ง ในตัวอย่างต่อไปนี้เราสร้างฐานข้อมูลชื่อ my_db และสร้างบัญชีสำหรับมัน
use my_db;
db.createUser({user:"my_db_admin",pwd:"my_db_password",roles:[{role:"dbAdmin",db:"my_db"},"readWrite"]});
การสำรองและเรียกคืนฐานข้อมูล
ไฟล์สำรองฐานข้อมูลของ mongodb คือไฟล์หลายไฟล์ที่เก็บไว้ในไดเร็กทอรีและผลลัพธ์การสำรองข้อมูลของฐานข้อมูลเชิงสัมพันธ์ที่เรามักใช้คือไฟล์อิสระ ดังนั้นหลังจากการสำรองข้อมูลเสร็จสิ้นเรามักจะต้องบีบอัดลงในไฟล์แยกต่างหากด้วยเครื่องมือบีบอัดจากนั้นคัดลอกและถ่ายโอน ต่อไปนี้เป็นตัวอย่างของการสำรองและกู้คืนฐานข้อมูล
mongodump -u my_db_account -p my_db_password -d my_db -o /home
mongorestore -d my_db -u my_db_account -p my_db_password --drop /home/my_db/