Hot answers tagged

33

You can use HomeBrew, see the official MongoDB HomeBrew page. Just add the tap: brew tap mongodb/brew And then after adding the tap from above, you can then install the Mongo shell with: brew install mongodb-community-shell


11

The problem can be solved by: Backing-up all the databases (using mongodump) Removing every file in /data/db, due to their incompatibility with the newer version: rm -rf /data/db/* Restarting the MongoDB service Restoring all the databases (using mongorestore)


4

You can't retrieve existing passwords, but you can reset them assuming you have ssh access to the host and appropriate root or sudo permissions to edit the MongoDB configuration and restart the MongoDB service. The exact steps may vary depending on your O/S and how you manage the MongoDB server, but the general process for resetting a password on a ...


3

The MongoDB Atlas API is for programmatic access to Atlas' management, monitoring, and backup features. API connections are to the Atlas service, not to the underlying MongoDB clusters. To query data in your clusters (for example, listing database and collections) you need to connect to each cluster using an authenticated MongoDB driver or client. I ...


3

The diagnostic.data file contains the result of db.serverStatus() command in binary format. This will be used by the MongoDB engineers to analyze the behavior of the server if any error happens. It is not necessary to take a backup of this file.


3

For the people who will come here in the future the issue was, I was using MongoDB 4.0 on the local and server was on 4.2: Starting in version 4.2, mongodump uses Extended JSON v2.0 (Canonical) format for the metadata files. To parse these files for restore, use mongorestore version 4.2+ that supports Extended JSON v2.0 (Canonical or Relaxed mode) format. ...


3

You don't have the required privileges for the config database. See https://docs.mongodb.com/manual/reference/built-in-roles/ : readWriteAnyDatabase Provides the same privileges as readWrite on all databases except local and config. userAdminAnyDatabase Provides the same access to user administration operations as userAdmin on all ...


3

according to https://docs.mongodb.com/manual/reference/built-in-roles/ the "readwrite" is to blame ... readWrite Provides all the privileges of the read role plus ability to modify data on all non-system collections and the system.js collection. The role provides the following actions on those collections: collStats convertToCapped ...


3

You can group several privileges into one Role. It is simpler to grant roles rather than dealing with a bunch of privileges. In a multi-tier architecture this might be no so important. You may have a user admin, backup, http - that's it. However, when your database is used by many (human) users distributed over several departments with different ...


2

This question is for Linux, but for fellow windows users who found their way here and want a windows solution... the problem is your Mongodb service is stopped. So do the following steps: 1) cntrl-alt-del and open your task manager 2) click on 'services' 3) scroll down to MongoDB 4) right click and hit 'start' (or 'restart') go back to ...


2

The easiest way to figure out what is going on in your scenario is to tail the server log on what is going on with the following command: # This will filter all noise out and leave you only with the "replication" information tail /var/log/mongodb/mongod.log -f -n 100000 | grep repl The above command will output what is going on with the ...


2

I have met similiar problem with admin db, when upgrade from old mongodb 3.4 to 4.2. Solution is to mongodump all dbs and delete /var/lib/mongodb, then mongorestore all dbs back. STORAGE [initandlisten] exception in initAndListen: MustDowngrade: Collection does not have UUID in KVCatalog. Collection: admin.system.users, terminating 2019-09-24T21:59:55....


2

use code below before mongo sudo brew services start mongodb-community


2

Can I choose which databases/collections are replicated ? A replica set is a group of mongodb instances that maintain the same data set, so it is necessary for the entire set of data to be replicated between nodes. Is a 2-members (a primary and a secondary) replica set eligible ? A replica set should have an odd number of voting members. If you want ...


2

just to note the issue is still there using mongoDB 4.2.6 and as it is said in this post is only solved by providing a FQDN when configuring the ReplicaSet


2

If I understand correctly, this is about how to view ip addresses that got connected to your mongoDB Atlas cluster, I would say you can see number of connections established to a cluster by just logging into your Atlas mongoDB cloud dashboard (Atlas login). But if you want details on connections established, then you can download logs for that particular ...


2

Replica sets in MongoDB are designed for data redundancy and failover, so all data-bearing members of a replica set currently contain the same databases & collections as at MongoDB 4.2. A member with a partial data set would not be able to fulfil either of these key design goals for a replica set deployment. There is a relevant server issue you can ...


2

Arbiter nodes don't "replicate" data... The problem with your setup is that, that you can "lose" two of your three data-bearing nodes and your setup has still "majority" in votes. Meaning that replica set still keeps "serving" clients, but all data is only at the one node without replication. Then comes that "majority RC", with that setup, even you lose ...


2

To permanently suppress this server warning you currently need to use the XFS filesystem. The warning was added due to observed stalls with EXT4 during WiredTiger checkpoints. You may want to upvote & watch SERVER-19790: Provide mechanism to clear/acknowledge startup warnings in the MongoDB issue tracker. If you want to suppress displaying this warning ...


2

The one reason I can see is that you are doing unnecessary work that way. PostgreSQL will compress and toast the base64 string, so you have to pay the price of compression and decompression, unless you set the column to EXTERNAL, then you don't compress, but you waste storage space and I/O bandwidth. Hint: if you store compressed binary data in PostgreSQL, ...


2

If replication OpLog window goes under one hour, it means that timestamp between first and last lines in the OpLog is under one hour. This can happen when there is lots of changes in the DB and your size of OpLog is "too small". No, this is not fatal. It just means that your secondary nodes cannot "fallback" more than what is your OpLog window. I mean that ...


1

Just to clarify in case someone stumbles upon this in the future. MongoDB Replicasets need a majority vote to elect a primary. So uneven amount of nodes are advised because a 4 member replica set requires 3 votes as well as a 5 member replica set. But with a 5 member replica set 2 members can go down while with 4 only 1 can go down before the replica set ...


1

Mongo allows the content of a record to change. You can add any values you need and remove any you don't each time you persist a record. The application could have an object class for each state. To mutate a record read it into an instance of whatever class corresponds to its current state. Then map the values you intend to retain to an object of the new ...


1

The read/write ticket values are set to 128 to prevent overwhelming WiredTiger with concurrent requests. They are chosen to cater for the typical server hardware. It's generally not recommended to change these values. If you see stalling and observed that the read/write tickets to be maxed out, it's extremely likely that this is just a symptom. The cause of ...


1

I found a solution where i configure rsyslog to pick up that file and forward it to my target server. # RSyslog Configuration for MongoDB /etc/rsyslog.d/mongod.conf $ModLoad imfile $InputFileName /var/log/mongodb/mongod.log $InputFileTag mongodb $InputFileStateFile mongodb-state $InputFileFacility local3 $InputRunFileMonitor local3.* action(type="omfwd" ...


1

You can use MongoDB's Aggregation Pipeline to add calculated or constant fields to a query. The $addFields stage appends new fields to existing result documents if you don't want to specify a list of all fields. However, since your example projects a subset of fields you can also add new fields using expressions in a $project stage. Your find() query would ...


1

Is such conversion considered a safe operation? Converting a standalone node to a replica set is a straightforward procedure, but if you do not have a backup of your deployment (and this data is important) I would definitely prioritise creating and testing a backup. If you only have a single copy of your data (the one being used!) you will have very limited ...


1

my question is to know if this is feasible A shard key index cannot be multi key, text, or geospatial, so part of your theoretical approach is definitely infeasible. You also mention considering hashed sharding on a datetime field, which could provide better data distribution for otherwise monotonically increasing values like a timestamp. However, a ...


1

The canonical answer is to create sample data using both schemas, and profile the queries you'll be doing to see which schema runs faster :-) But I'm guessing you'll actually see equivalent performance. Mongo is pretty fast at querying subdocuments as long as you index the subfields (which you're doing in the first option). So the real way to decide ...


1

Split brain is possible in MongoDB, better keeping in mind this doc: In some circumstances, it may be possible for a replica set to temporarily have two primaries; however, only one primary will be capable of confirming writes with the "majority" write concern.


Only top voted, non community-wiki answers of a minimum length are eligible