Client MongoDB cho Mac
Viết query đúng cú pháp mongosh, xem collection theo từng trang trong data grid, và insert hay sửa nguyên một document dạng Extended JSON. Đổi tên hoặc xóa một field trên cả collection, với mọi câu lệnh được hiển thị trước khi chạy.
Dùng được trên MacDriver được tải về ở lần đầu bạn chọn MongoDB
Tóm tắt
- Ngôn ngữ query
- MQL
- Driver
- Tải về ở lần dùng đầu
- Cách kết nối
- Host và port, SSH tunnel, SSL/TLS, AWS IAM
- Port mặc định
- 27017
- Phiên bản tối thiểu
- 4.0, bắt buộc: server cũ hơn bị từ chối
- iPhone và iPad
- Không mở được


Kết nối
Nhập một host, hoặc nhiều cặp host:port cho replica set, và TablePro tự tìm ra primary. Bạn cũng có thể dán một URL mongodb:// hay mongodb+srv://. Đăng nhập bằng SCRAM-SHA-1, SCRAM-SHA-256, X.509 hoặc AWS IAM, và điền Auth Database khi user của bạn được định nghĩa trong admin nhưng bạn lại xem một cơ sở dữ liệu khác.
Host có đuôi .mongodb.net được tự bật SRV và TLS, đúng như MongoDB Atlas yêu cầu. Hãy thêm địa chỉ IP của bạn vào danh sách truy cập của cluster trước: kết nối từ một địa chỉ không có trong danh sách sẽ bị timeout thay vì báo lỗi.
Connection mới để TLS tắt, và driver không có cơ chế dự phòng, nên Ưu tiên (Preferred) hoạt động như Required. Read Preference và Write Concern được đặt cho từng connection, và write concern đi kèm mọi lệnh insert, update và delete, dù chạy từ shell hay khi lưu trong data grid.
Khi đi qua SSH tunnel, chỉ host đầu tiên trong danh sách được dùng, nên việc tự phát hiện replica set và failover bị tắt trong phiên đó.
Query và sửa document
Tab query là một shell JavaScript nhận cú pháp mongosh: key không cần ngoặc kép, regex literal, ISODate(), biến, vòng lặp và forEach. Shell chạy ngay trong TablePro nên bạn không phải cài thêm gì, và biến bạn khai báo vẫn dùng được ở mọi tab trên connection đó cho tới khi ngắt kết nối. Autocomplete gợi ý collection, method, đường dẫn tới field lồng nhau và các toán tử $ hợp lệ tại vị trí con trỏ.
Mỗi collection mở thành data grid, với các field cấp cao nhất là cột và object lồng nhau hiển thị dạng Extended JSON. Ô được sửa vẫn giữ kiểu của field, nên date vẫn là date và ObjectId vẫn là ObjectId; khi sửa bên trong một object lồng nhau, chỉ đường dẫn bị đổi, như address.city, được ghi lại.
Insert Document và Edit Document nhận nguyên một document dạng Extended JSON. Edit Document đọc lại document từ server, và nếu ai đó đã sửa hay xóa nó sau khi hộp thoại mở, sẽ không có gì được lưu và hộp thoại báo cho bạn biết. Remove Field trên một ô sẽ gửi $unset.
Thanh lọc đi được vào object lồng nhau và mảng object, nên bạn lọc thẳng theo customer.country hay items.sku. Field chứa GeoJSON mở được trên Map view.
Safe Mode coi mọi câu lệnh trên connection MongoDB là thao tác ghi, vì driver không mở được session chỉ đọc. Các mức Alert và Safe Mode hỏi xác nhận từng câu, còn Read-Only chặn tất cả.
Collection, index và validator
Tab Structure liệt kê từng index cùng các field theo thứ tự key và loại index, như hashed, text, 2dsphere hay wildcard. Show DDL viết ra các lệnh createIndex để dựng lại chúng, kèm mọi tùy chọn mà server trả về.
Đổi tên hoặc xóa một field trên cả collection ngay trong tab đó. Mỗi thay đổi là một lệnh updateMany, hiển thị trong Preview SQL, và field nào được khai báo trong validator $jsonSchema cũng được đổi theo ở đó. Thao tác lưu bị từ chối trước khi ghi bất cứ thứ gì nếu một index, một search index hay một view vẫn dùng tên đó.
Bảng mới (New Table) tạo một collection mà các field trở thành validator $jsonSchema, rồi dựng các index bạn liệt kê. View và time-series collection hiện trong sidebar, và view mở ở chế độ chỉ đọc.
Sao lưu
Backup Dump ghi từng cơ sở dữ liệu bạn chọn ra một file archive nén gzip bằng mongodump, theo đúng các host, Auth Database, thiết lập SRV và TLS của connection, và bạn có thể thu hẹp bản dump xuống từng collection. Restore Dump chạy mongorestore vào cơ sở dữ liệu bạn chọn và giữ nguyên những gì đã có. Hãy cài MongoDB Database Tools trên máy Mac trước.
Di chuyển dữ liệu
Import file CSV, TSV, JSON, JSONL và XLSX vào một collection. Export collection hoặc kết quả query ra CSV, JSON, XLSX, Markdown, HTML, XML và MQL.
Bản export MQL là một file .js gồm các lệnh insertMany chạy được trong mongosh, kèm index và validator của từng collection nếu bạn chọn. Giá trị ở cấp cao nhất giữ nguyên kiểu, nhưng giá trị có kiểu nằm trong subdocument hay mảng, như một ObjectId trong mảng, được ghi thành chuỗi: với những collection đó, hãy export ra JSON hoặc sao lưu bằng mongodump.
iPhone và iPad
Ứng dụng cho iPhone và iPad không có driver MongoDB. Connection MongoDB đồng bộ từ máy Mac vẫn hiện trong danh sách nhưng không mở được.
Giới hạn
- Không hỗ trợ transaction.
- Không hỗ trợ GridFS và change stream.
- Không có công cụ dựng aggregation pipeline trực quan. Hãy viết aggregate() trong shell.
Công cụ khác
MongoDB Compass
Phiên bản 1.51.0, phát hành ngày 25 tháng 9 năm 2026Miễn phíMã nguồn đóng
MongoDB Compass là GUI chính hãng của MongoDB. Compass dựng aggregation pipeline theo từng stage và cho xem trước dữ liệu sau mỗi stage, phân tích schema của một collection từ một mẫu document, và vẽ explain plan. Hãy chọn Compass khi bạn dựng pipeline một cách trực quan hoặc cần tìm hiểu cấu trúc của một collection; TablePro hợp hơn khi MongoDB chỉ là một trong nhiều cơ sở dữ liệu bạn làm việc cùng trong một ứng dụng. Compass còn viết được query từ một câu hỏi bằng ngôn ngữ tự nhiên.
Nguồn: MongoDB Compass, MongoDB Compass repository, MongoDB Compass releases
Thông tin về các công cụ khác được kiểm tra ngày 2 tháng 10 năm 2026.
Câu hỏi về MongoDB
Tab query có phải là mongosh không?
Không. Đó là một shell nhận cú pháp mongosh, chạy ngay trong TablePro trên JavaScriptCore. Phần lớn code mongosh chạy được nguyên văn. Có một khác biệt: số nguyên vượt quá phạm vi 32-bit được lưu thành số nguyên 64-bit, trong khi mongosh lưu thành double, nên hãy bọc số đó trong Double() để có kết quả giống mongosh.
Làm sao để xem execution plan của một query?
Hãy nối .explain("executionStats") vào cursor trong tab query. Plan trả về dưới dạng một document; connection MongoDB không có sơ đồ execution plan.
Làm sao để liệt kê user của cơ sở dữ liệu?
Hãy chạy db.runCommand({usersInfo: 1}). Shell không phân tích được db.getUsers() hay db.createUser().
Tải TablePro
Yêu cầu macOS 13 Ventura trở lên