Chuyển tới nội dung

MongoDb là gì? Hướng dẫn cài đặt trên Windows

mongodb la gi

MongoDb là gì? Ưu nhược điểm của Mongodb. Khi nào nên chọn MongoDb cho dự án? Cách cài đặt MongoDb và MongoDb Compass trên Windows 10, 11.

1. Một chút về MongoDb

MongoDbhệ quản trị cơ sở dữ liệu NoSQL mã nguồn mở trên đa dạng nền tảng và được viết bằng ngôn ngữ C++. Mongodb được MongoDB Inc phát hành lần đầu vào 11 tháng 2 năm 2019. Hiện nay Mongodb trở nên rất phổ biến trong làng công nghệ và nó là điển hình nhất trong CSDL dạng NoSQL.

Là một dạng Database hướng tài liệu, dữ liệu trong hệ csdl này được lưu trữ dưới dạng JSON tại các Colection thay vì bảng như SQL. Có thể hiểu đơn giản là Mongodb không lưu dữ liệu dưới dạng bảng, chúng lưu thành dạng list (Colection) các JSON. Mongo

Một số ưu nhược điểm của Mongodb

Ưu điểm:

  • Open source miễn phí
  • Hiệu năng cao, tốc độ truy vấn (find, update, insert, delete) nhanh hơn các hệ quản trị CSDL khác.
  • Dữ liệu linh hoạt, không bị bó buộc về kiểu dữ liệu, field . . .
  • Rất dễ dàng mở rộng
  • . . .

Nhược điểm:

  • Không có tính ràng buộc nên dễ bị nhầm lẫn không giống như RDBMS 
  • Tốn bộ nhớ dữ liệu dạng key value ( các document chỉ khác nhau value sẽ lặp lại key)
  • . . .

Ngoài ra còn rất nhiều ưu nhược điểm khác nhau nữa mà mình chưa liệt kê hết được. Nếu bạn thấy có ưu nhược điểm gì thì để lại comment cho mình nhé <3.

Khi nào nên sử dụng MongoDb?

Các dự án dạng MERN stack (Mongodb – Express – React – Nodejs) sẽ dùng Mongodb, trường hợp này sử dụng là chúng phù hợp về công nghệ nên hỗ trợ nhau tốt. Trong các dự án, Mongodb được chọn khi cần phải truy xuất dữ liệu nhanh và dữ liệu không quá phức tạp.

Mình có tổng hợp được vài đặc điểm lựa chọn sau:

  • Các hệ thống thời gian thực (realtime) cần sự phản hồi nhanh, truy suất dữ liệu nhanh
  • Các hệ thống bigdata hoặc có lượng request lớn
  • Hệ thống search engine
  • Dữ liệu lưu trữ không có cấu trúc
  • Ngôn ngữ lập trình hỗ trợ tốt ( ví dự Nodejs)
  • . . .

Trên thực tế việc lựa chọn SQL và NoSQL thực sự cần được cân nhắc rất nhiều. Tùy từng trường hợp sử dụng mà chúng sẽ có lợi thế khác nhau, không cái nào mạnh hơn cái nào hoàn toàn.

2. Hướng dẫn cài đặt MongoDb trên hệ điều windows

Trước khi cài đặt, đầu tiên bạn cần tải file cài đặt về trước, tùy từng hệ điều hành mà bạn chọn file tải phù hợp.

Link download Mongodb:
Download

download mongodb windows

Sau khi download về rồi thì việc cài đặt hết sức đơn giản và sau đây là các bước cụ thể:

Bước 1: Chạy file cài đặt rồi bấm next

install mongodb windows step 1

Bước 2: Tích chọn I accept the terms rồi bấm next

install mongodb windows step 2

Bước 3: Chọn Complete nếu bạn muốn cài mặc định. Chọn Custom nếu bạn muốn tùy chỉnh vị trí thư mục cần cài. Sau khi chọn xong bấm next

install mongodb windows step 3

Bước 4: Tích chọn Install MongoDb as a Service nếu bạn muốn nó trở thành 1 service của windows. Tiếp tục bấm next.

install mongodb windows step 4

Bước 5: Tích chọn Install Mongodb Compass. Mongodb Compass sẽ giúp bạn dễ dàng xem, chỉnh sửa, tạo mới, mọi thao tác CSDL của mình hơn rất nhiều. Sau đó bấm next

install mongodb windows step 5

Chọn install

install mongodb windows step 6

Bước 6: Chờ đợi cài đặt

install mongodb windows step 7

Chờ khoảng 5 – 10 phút tùy máy tính của bạn là Mongodb cài đặt xong.

install mongodb windows step 8

Đến bước này là bạn có thể chiến với Mongodb được rồi nhé.

3. Cách đổi kết nối MongoDB Compass Localhost về dạng IP

Phần này mình viết thêm luôn vào bài viết mặc dù nó không liên quan tới chủ đề lắm. Chả là mặc định kết nối của Mongodb compass sẽ dùng localhost thay vì địa chỉ IP. Nên mình có mày mò cách đổi.

Tóm tắt mục đích bằng 2 hình ảnh:

Trước khi đổi:

Sau khi đổi bạn có thể điền địa chỉ IP của mình thay cho Local host:

Cách làm như sau:

Vào thư mục cài đặt MongoDb\Server\version\bin.
Mặc định là C:\Program Files\MongoDB\Server\5.0\bin

Chỉnh sửa file Mongod.cfg. Thay dòng bindIP thành như hình:

Bài viết của mình tới đây là hết, cảm ơn bạn đã để ý tới bài viết của mình nhé!

Xem thêm các bài viết về thủ thuật, công nghệ khác của mình tại đây.

Trả lời

Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *