MongoDB Atlas là cơ sở dữ liệu đám mây của MongoDB được ra mắt vào năm 2016 chạy trên AWS, Microsoft Azure và Google Cloud Platform
Dữ liệu trong mỗi Cụm trong Atlas được lưu trữ theo cơ chế Sao chép, với 3 nút. 1 chủ [chính] và 2 nô lệ [phụ]
1. Bắt đầu
Để bắt đầu sử dụng Atlas các bạn hay truy cập vào đây và nhấn ngay nút Start Free nhé
Cứ mạnh dạng mà đăng ký và yên tâm rằng với bản miễn phí thì Atlas sẽ không yêu cầu thẻ tín dụng để nhăm nhe trừ tiền mỗi khi bạn sơ lược như AWS đâu
Ngay sau khi đăng ký thành công, bạn có thể chọn tùy chọn dịch vụ, và coder nghèo như mình thì hiển thị tùy chọn tùy chọn miễn phí
2. Truy cập cơ sở dữ liệu
Nhấp vào Truy cập cơ sở dữ liệu bạn sẽ đi đến màn hình quản lý người dùng. Tại đây bạn có thể tạo ra người dùng với các quyền là. Admin, Read and Write, Only Read và bạn có thể tạo Vai trò tùy chỉnh như quyền ghi hoặc đọc một Cơ sở dữ liệu cụ thể
Đầu tiên phải có data mẫu đã chứ nhỉ 😀 mình sẽ tạo một database ví dụ để thực hiện công việc export và import trong bài viết hôm nay
Mình sử dụng MongoDB Compass để tạo dữ liệu cho nhanh, bạn nào chưa biết nó là gì thì tham khảo phần 2 trong bài viết này nhé
“Cài đặt MongoDB và MongoDB Compass trên Ubuntu – Linux Mint”
- Mình sẽ tạo cơ sở dữ liệu tên là import-export-trungquandev cùng với một bộ sưu tập là người dùng
- Chọn vào người dùng bộ sưu tập để tạo bản ghi mới
- Nhập dữ liệu mẫu cho người dùng ghi bản, rồi chọn Chèn
Vì vậy là xong, chỉ cần một bản ghi như trên là đủ để làm ví dụ xuất / nhập rồi
Một lưu ý trước khi đến phần tiếp theo
Như ở bài giới thiệu MongoDB trước, mình có nhắc đến 3 công cụ giao diện đồ họa giúp cho việc quản lý các cơ sở dữ liệu mongodb dễ dàng hơn đó là Studio 3T [miễn phí], adminMongo[miễn phí] và MongoDB Compass
Cho đến thời điểm hiện tại mình viết bài này thì chỉ có Studio 3T là hỗ trợ nhập/xuất cơ sở dữ liệu mongodb thông qua giao diện đồ họa. Tất nhiên nó là hàng trả phí, gói thấp nhất cũng rơi vào tầm $150/năm. Bạn nào muốn sử dụng thì tham khảo tài liệu chi phí Studio 3T tại đây
Còn adminMongo và MongoDB Compass thì không hỗ trợ, nên mình sẽ hướng dẫn các bạn nhập/xuất cơ sở dữ liệu mongodb thông qua giao diện dòng lệnh. Yên tâm, đơn giản lắm 😀
2. Xuất cơ sở dữ liệu MongoDB
Open Terminal up and run
mongoexport --db tên_database --collection tên_collection --out tên_file_xuất_ra.json
Các thông số
--db
. tên cơ sở dữ liệu cần xuất
--collection
. tên bộ sưu tập cần xuất
--out
. file name xuất ra dưới định dạng json
[Có thể trong lệnh trên các bạn nhập tên cơ sở dữ liệu, tên bộ sưu tập đã tạo ở phần 1 và tên tệp định dạng json mà bạn muốn xuất ra. ]
Kết quả xuất 1 bản ghi. chính là bản ghi cấm mà mình vừa tạo trong bộ sưu tập người dùng
Vì khi export mình đang đứng từ desktop nên giờ ra ngoài desktop kiểm tra file userExported. json xem chưa có. And it here
Nếu cơ sở dữ liệu của bạn có nhiều bộ sưu tập thì làm lần lượt tương tự với từng cái nhé, bên mongodb này nó không có kiểu nhập/xuất nguyên cả cái cơ sở dữ liệu như bên PhpMyAdmin của Mysql
3. Nhập cơ sở dữ liệu MongoDB
Bây giờ mình sẽ tạo một cơ sở dữ liệu và bộ sưu tập mới, sau đó nhập dữ liệu từ tệp userExported. json on on
Tạo cơ sở dữ liệu new-database-trungquandev và thu thập người dùng mới
Quay lại lệnh cấm thiết bị đầu cuối cửa sổ, chạy lệnh
mongoimport --db tên_database --collection tên_collection --file tên_file_import.json
Các thông số
--db
. tên cơ sở dữ liệu cần nhập
--collection
. tên bộ sưu tập cần nhập
--file
. tên của tệp json mà chúng tôi nhập dữ liệu từ nó
Kiểm tra lại cơ sở dữ liệu mới xem dữ liệu chưa có, kết quả ngon lành 😀
Việc Nhập cũng giống như Xuất đó là phải làm tương tự với từng bộ sưu tập trong một cơ sở dữ liệu
Như vậy là mình đã hướng dẫn hoàn thành cách nhập và xuất cơ sở dữ liệu trong MongoDB, bài này cũng đơn giản thôi mà nhỉ?