Robo 3T (formerly Robomongo.) is a shell-centric cross-platform MongoDB management tool. Unlike most other MongoDB admin UI tools, Robo 3T embeds the actual mongo shell in a tabbed interface with access to a shell command line as well as GUI interaction. Robo 3T is a free and lightweight GUI for MongoDB. It is a MongoDB management tool which has a shell-centric cross-platform and is supported by JSON i.e. JavaScript Object Notation. Robo 3T (formerly Robomongo) is the free lightweight GUI for MongoDB enthusiasts. Since it was launched, Robo 3T (formerly Robomongo) has provided an open source MongoDB tool that provides innovative functionality to meet the needs of enthusiasts and the wider community.
Robo 3T is a free, open source, cross-platform MongoDB GUI management tool with an embedded mongo shell, real auto-completion support and boat load of features that anyone can use to manage MongoDB databases. Whether you’re using Windows, MacOS or Linux, Robo 3T should be right for you. This article will discuss and show the simple steps of configuring a MongoDB database within Robo 3T GUI. Robo 3T, formerly known as “Robomongo” is one of the leading MongoDB GUI ( Graphical User Interface ) tools out there that provides an easy way to interact with MongDB databases instead of the command line or Mongo Shell.
This brief tutorial shows you how to install Robo 3T (formally RoboMongo) on Ubuntu 20.04 | 18.04.
Robo 3T is a free, open source, cross-platform MongoDB GUI management tool with an embedded mongo shell, real auto-completion support and boat load of features that anyone can use to manage MongoDB databases.
Whether you’re using Windows, MacOS or Linux, Robo 3T should be right for you. Robo 3T comes with embedded MongoDB shell – same shell in MongoDB, full synchronous UI with modern and robust open source community backing.
For more about Robo 3T, go to this website.
There are may ways to install Robo 3T on Ubuntu. Below are just two of the most popular methods of installing Robo 3T.
Option 1: Install via Official Package
On Ubuntu systems, students and new users can use this method to get Robo 3T on Ubuntu. Go and download the official package from their website.
After downloading, you can use the commands below to change into the Downloads folder and extract the downloaded file and make the setup script executable.
After running the above, run the commands below to launch the setup wizard.
That should start the setup wizard. Simply accept the default and complete the setup.
Click Next to continue.
Robo 3t 1
Accept the default destination directory to install Robo 3T content and click Next.
Click Finish to complete the setup. After a brief moment, Robo 3T should open up and ready to use.
That should do it!
Option 2: Install via Snap
Another way to install Robo 3T on Ubuntu is via Snap package management. Snaps are containerized software packages that are simple to create and install.
Snap applications are packaged with all their dependencies to run on all popular Linux distributions from a single build which allow them to update automatically and roll back gracefully.
If the first option above isn’t working for you, run the commands below to install Robo 3T via Snap.
That should do it!
Conclusion:
This post showed you how to install Robo 3T on Ubuntu 20.04 | 18.04. If you find any error above, please use the comment form below to report.
You may also like the post below:
-->APPLIES TO: Azure Cosmos DB API for MongoDB
Azure Cosmos DB is Microsoft's globally distributed multi-model database service. You can communicate with the Azure Cosmos DB's API for MongoDB using any of the open-source MongoDB client drivers. The Azure Cosmos DB's API for MongoDB enables the use of existing client drivers by adhering to the MongoDB wire protocol.
By using the Azure Cosmos DB's API for MongoDB, you can enjoy the benefits of the MongoDB you're used to, with all of the enterprise capabilities that Cosmos DB provides: global distribution, automatic sharding, availability and latency guarantees, encryption at rest, backups, and much more.
Note
Version 3.6 of the Cosmos DB API for MongoDB has no current plans for end-of-life (EOL). The minimum notice for a future EOL is three years.
Protocol Support
The Azure Cosmos DB's API for MongoDB is compatible with MongoDB server version 3.6 by default for new accounts. The supported operators and any limitations or exceptions are listed below. Any client driver that understands these protocols should be able to connect to Azure Cosmos DB's API for MongoDB. Note that when using Azure Cosmos DB's API for MongoDB accounts, the 3.6 version of account has the endpoint in the format *.mongo.cosmos.azure.com
whereas the 3.2 version of account has the endpoint in the format *.documents.azure.com
.
Query language support
Azure Cosmos DB's API for MongoDB provides comprehensive support for MongoDB query language constructs. The following sections show the detailed list of server operations, operators, stages, commands, and options currently supported by Azure Cosmos DB.
Note
This article only lists the supported server commands and excludes client-side wrapper functions. Client-side wrapper functions such as deleteMany()
and updateMany()
internally utilize the delete()
and update()
server commands. Functions utilizing supported server commands are compatible with Azure Cosmos DB's API for MongoDB.
Database commands
Azure Cosmos DB's API for MongoDB supports the following database commands:
Query and write operation commands
Command | Supported |
---|---|
change streams | Yes |
delete | Yes |
eval | No |
find | Yes |
findAndModify | Yes |
getLastError | Yes |
getMore | Yes |
getPrevError | No |
insert | Yes |
parallelCollectionScan | No |
resetError | No |
update | Yes |
Authentication commands
Command | Supported |
---|---|
authenticate | Yes |
getnonce | Yes |
logout | Yes |
Administration commands
Command | Supported |
---|---|
cloneCollectionAsCapped | No |
collMod | No |
connectionStatus | No |
convertToCapped | No |
copydb | No |
create | Yes |
createIndexes | Yes |
currentOp | Yes |
drop | Yes |
dropDatabase | Yes |
dropIndexes | Yes |
filemd5 | Yes |
killCursors | Yes |
killOp | No |
listCollections | Yes |
listDatabases | Yes |
listIndexes | Yes |
reIndex | Yes |
renameCollection | No |
Diagnostics commands
Command | Supported |
---|---|
buildInfo | Yes |
collStats | Yes |
connPoolStats | No |
connectionStatus | No |
dataSize | No |
dbHash | No |
dbStats | Yes |
explain | Yes |
features | No |
hostInfo | Yes |
listDatabases | Yes |
listCommands | No |
profiler | No |
serverStatus | No |
top | No |
whatsmyuri | Yes |
Aggregation pipeline
Aggregation commands
Command | Supported |
---|---|
aggregate | Yes |
count | Yes |
distinct | Yes |
mapReduce | No |
Aggregation stages
Command | Supported |
---|---|
$addFields | Yes |
$bucket | No |
$bucketAuto | No |
$changeStream | Yes |
$collStats | No |
$count | Yes |
$currentOp | No |
$facet | Yes |
$geoNear | Yes |
$graphLookup | Yes |
$group | Yes |
$indexStats | No |
$limit | Yes |
$listLocalSessions | No |
$listSessions | No |
$lookup | Partial |
$match | Yes |
$out | Yes |
$project | Yes |
$redact | Yes |
$replaceRoot | Yes |
$replaceWith | No |
$sample | Yes |
$skip | Yes |
$sort | Yes |
$sortByCount | Yes |
$unwind | Yes |
Note
$lookup
does not yet support the uncorrelated subqueries feature introduced in server version 3.6. You will receive an error with a message containing let is not supported
if you attempt to use the $lookup
operator with let
and pipeline
fields.
Boolean expressions
Command | Supported |
---|---|
$and | Yes |
$not | Yes |
$or | Yes |
Set expressions
Command | Supported |
---|---|
$setEquals | Yes |
$setIntersection | Yes |
$setUnion | Yes |
$setDifference | Yes |
$setIsSubset | Yes |
$anyElementTrue | Yes |
$allElementsTrue | Yes |
Comparison expressions
Command | Supported |
---|---|
$cmp | Yes |
$eq | Yes |
$gt | Yes |
$gte | Yes |
$lt | Yes |
$lte | Yes |
$ne | Yes |
$in | Yes |
$nin | Yes |
Arithmetic expressions
Robo 3t Download For Windows 10
Command | Supported |
---|---|
$abs | Yes |
$add | Yes |
$ceil | Yes |
$divide | Yes |
$exp | Yes |
$floor | Yes |
$ln | Yes |
$log | Yes |
$log10 | Yes |
$mod | Yes |
$multiply | Yes |
$pow | Yes |
$sqrt | Yes |
$subtract | Yes |
$trunc | Yes |
String expressions
Command | Supported |
---|---|
$concat | Yes |
$indexOfBytes | Yes |
$indexOfCP | Yes |
$split | Yes |
$strLenBytes | Yes |
$strLenCP | Yes |
$strcasecmp | Yes |
$substr | Yes |
$substrBytes | Yes |
$substrCP | Yes |
$toLower | Yes |
$toUpper | Yes |
Text search operator
Command | Supported |
---|---|
$meta | No |
Array expressions
Command | Supported |
---|---|
$arrayElemAt | Yes |
$arrayToObject | Yes |
$concatArrays | Yes |
$filter | Yes |
$indexOfArray | Yes |
$isArray | Yes |
$objectToArray | Yes |
$range | Yes |
$reverseArray | Yes |
$reduce | Yes |
$size | Yes |
$slice | Yes |
$zip | Yes |
$in | Yes |
Variable operators
Command | Supported |
---|---|
$map | Yes |
$let | Yes |
System variables
Command | Supported |
---|---|
$$CURRENT | Yes |
$$DESCEND | Yes |
$$KEEP | Yes |
$$PRUNE | Yes |
$$REMOVE | Yes |
$$ROOT | Yes |
Literal operator
Command | Supported |
---|---|
$literal | Yes |
Date expressions
Command | Supported |
---|---|
$dayOfYear | Yes |
$dayOfMonth | Yes |
$dayOfWeek | Yes |
$year | Yes |
$month | Yes |
$week | Yes |
$hour | Yes |
$minute | Yes |
$second | Yes |
$millisecond | Yes |
$dateToString | Yes |
$isoDayOfWeek | Yes |
$isoWeek | Yes |
$dateFromParts | No |
$dateToParts | No |
$dateFromString | No |
$isoWeekYear | Yes |
Conditional expressions
Command | Supported |
---|---|
$cond | Yes |
$ifNull | Yes |
$switch | Yes |
Data type operator
Command | Supported |
---|---|
$type | Yes |
Accumulator expressions
Command | Supported |
---|---|
$sum | Yes |
$avg | Yes |
$first | Yes |
$last | Yes |
$max | Yes |
$min | Yes |
$push | Yes |
$addToSet | Yes |
$stdDevPop | Yes |
$stdDevSamp | Yes |
Merge operator
Command | Supported |
---|---|
$mergeObjects | Yes |
Data types
Command | Supported |
---|---|
Double | Yes |
String | Yes |
Object | Yes |
Array | Yes |
Binary Data | Yes |
ObjectId | Yes |
Boolean | Yes |
Date | Yes |
Null | Yes |
32-bit Integer (int) | Yes |
Timestamp | Yes |
64-bit Integer (long) | Yes |
MinKey | Yes |
MaxKey | Yes |
Decimal128 | Yes |
Regular Expression | Yes |
JavaScript | Yes |
JavaScript (with scope) | Yes |
Undefined | Yes |
Indexes and index properties
Indexes
Command | Supported |
---|---|
Single Field Index | Yes |
Compound Index | Yes |
Multikey Index | Yes |
Text Index | No |
2dsphere | Yes |
2d Index | No |
Hashed Index | Yes |
Index properties
Command | Supported |
---|---|
TTL | Yes |
Unique | Yes |
Partial | No |
Case Insensitive | No |
Sparse | No |
Background | Yes |
Operators
Logical operators
Command | Supported |
---|---|
$or | Yes |
$and | Yes |
$not | Yes |
$nor | Yes |
Element operators
Command | Supported |
---|---|
$exists | Yes |
$type | Yes |
Evaluation query operators
Command | Supported |
---|---|
$expr | No |
$jsonSchema | No |
$mod | Yes |
$regex | Yes |
$text | No (Not supported. Use $regex instead.) |
$where | No |
In the $regex queries, left-anchored expressions allow index search. However, using 'i' modifier (case-insensitivity) and 'm' modifier (multiline) causes the collection scan in all expressions.
When there's a need to include '$' or '|', it is best to create two (or more) regex queries. For example, given the following original query: find({x:{$regex: /^abc$/})
, it has to be modified as follows:
find({x:{$regex: /^abc/, x:{$regex:/^abc$/}})
The first part will use the index to restrict the search to those documents beginning with ^abc and the second part will match the exact entries. The bar operator '|' acts as an 'or' function - the query find({x:{$regex: /^abc |^def/})
matches the documents in which field 'x' has values that begin with 'abc' or 'def'. To utilize the index, it's recommended to break the query into two different queries joined by the $or operator: find( {$or : [{x: $regex: /^abc/}, {$regex: /^def/}] })
.
Array operators
Command | Supported |
---|---|
$all | Yes |
$elemMatch | Yes |
$size | Yes |
Comment operator
Command | Supported |
---|---|
$comment | Yes |
Projection operators
Command | Supported |
---|---|
$elemMatch | Yes |
$meta | No |
$slice | Yes |
Update operators
Field update operators
Command | Supported |
---|---|
$inc | Yes |
$mul | Yes |
$rename | Yes |
$setOnInsert | Yes |
$set | Yes |
$unset | Yes |
$min | Yes |
$max | Yes |
$currentDate | Yes |
Array update operators
Command | Supported |
---|---|
$ | Yes |
$[] | Yes |
$[] | Yes |
$addToSet | Yes |
$pop | Yes |
$pullAll | Yes |
$pull | Yes |
$push | Yes |
$pushAll | Yes |
Update modifiers
Command | Supported |
---|---|
$each | Yes |
$slice | Yes |
$sort | Yes |
$position | Yes |
Bitwise update operator
Command | Supported |
---|---|
$bit | Yes |
$bitsAllSet | No |
$bitsAnySet | No |
$bitsAllClear | No |
$bitsAnyClear | No |
Robo 3t Function
Geospatial operators
Operator | Supported |
---|---|
$geoWithin | Yes |
$geoIntersects | Yes |
$near | Yes |
$nearSphere | Yes |
$geometry | Yes |
$minDistance | Yes |
$maxDistance | Yes |
$center | No |
$centerSphere | No |
$box | No |
$polygon | No |
Sort operations
When using the findOneAndUpdate
operation, sort operations on a single field are supported but sort operations on multiple fields are not supported.
Unique indexes
Unique indexes ensure that a specific field doesn't have duplicate values across all documents in a collection, similar to the way uniqueness is preserved on the default '_id' key. You can create unique indexes in Cosmos DB by using the createIndex
command with the unique
constraint parameter:
Compound indexes
Compound indexes provide a way to create an index for groups of fields for up to 8 fields. This type of index differs from the native MongoDB compound indexes. In Azure Cosmos DB, compound indexes are used for sorting operations that are applied to multiple fields. To create a compound index you need to specify more than one property as the parameter:
GridFS
Azure Cosmos DB supports GridFS through any GridFS-compatible MongoDB driver.
Replication
Cosmos DB supports automatic, native replication at the lowest layers. This logic is extended out to achieve low-latency, global replication as well. Cosmos DB does not support manual replication commands.
Retryable Writes
Azure Cosmos DB does not yet support retryable writes. Client drivers must add retryWrites=false
to their connection string.
Sharding
Azure Cosmos DB supports automatic, server-side sharding. It manages shard creation, placement, and balancing automatically. Azure Cosmos DB does not support manual sharding commands, which means you don't have to invoke commands such as addShard, balancerStart, moveChunk etc. You only need to specify the shard key while creating the containers or querying the data.
Sessions
Azure Cosmos DB does not yet support server-side sessions commands.
Time-to-live (TTL)
Azure Cosmos DB supports a time-to-live (TTL) based on the timestamp of the document. TTL can be enabled for collections from the Azure portal.
User and role management
Azure Cosmos DB does not yet support users and roles. However, it supports Azure role-based access control (Azure RBAC) and read-write and read-only passwords or keys that can be obtained through the connection string pane in the Azure portal.
Write Concern
Some applications rely on a Write Concern which specifies the number of responses required during a write operation. Due to how Azure Cosmos DB handles replication, all writes are automatically majority quorum by default when using strong consistency. Any write concern specified by the client code is ignored. To learn more, see Using consistency levels to maximize availability and performance article.
Next steps
- For further information check Mongo 3.6 version features
- Learn how to use Studio 3T with Azure Cosmos DB's API for MongoDB.
- Learn how to use Robo 3T with Azure Cosmos DB's API for MongoDB.
- Explore MongoDB samples with Azure Cosmos DB's API for MongoDB.