Difference between revisions of "MongoDB"
From Wasya Wiki
Line 1: | Line 1: | ||
− | |||
− | == | + | = Development = |
− | + | == rename a field, or paste one field to another collection-wide == | |
− | + | Methods are: updateOne, updateMany or update | |
− | + | <pre> | |
− | + | db.collection.<update method>( | |
− | + | {}, | |
− | + | [ | |
+ | {"$set": {"name": { "$concat": ["$firstName", " ", "$lastName"]}}} | ||
+ | ] | ||
+ | ) | ||
+ | </pre> | ||
== Count Documents == | == Count Documents == | ||
Line 18: | Line 21: | ||
</pre> | </pre> | ||
− | == Performance Tuning | + | |
+ | = Install MongoDB on ubuntu = | ||
+ | From: https://docs.mongodb.org/manual/tutorial/install-mongodb-on-ubuntu/ | ||
+ | |||
+ | This is probably obsolete. | ||
+ | |||
+ | sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv EA312927 | ||
+ | echo "deb http://repo.mongodb.org/apt/ubuntu trusty/mongodb-org/3.2 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-3.2.list | ||
+ | sudo apt-get update -y | ||
+ | sudo apt-get install -y mongodb-org | ||
+ | |||
+ | |||
+ | = Performance Tuning = | ||
db.getProfilingStatus() | db.getProfilingStatus() |
Revision as of 19:10, 20 October 2021
Contents
Development
rename a field, or paste one field to another collection-wide
Methods are: updateOne, updateMany or update
db.collection.<update method>( {}, [ {"$set": {"name": { "$concat": ["$firstName", " ", "$lastName"]}}} ] )
Count Documents
db.collection.aggregate( [ { $group: { _id: null, count: { $sum: 1 } } } ] )
Install MongoDB on ubuntu
From: https://docs.mongodb.org/manual/tutorial/install-mongodb-on-ubuntu/
This is probably obsolete.
sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv EA312927 echo "deb http://repo.mongodb.org/apt/ubuntu trusty/mongodb-org/3.2 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-3.2.list sudo apt-get update -y sudo apt-get install -y mongodb-org
Performance Tuning
db.getProfilingStatus() db.getProfilingLevel() db.setProfilingLevel(1, 10) db.getCollection('system.profile').find({})
add member to cluster
operaeventrsX:PRIMARY> rs.add("10.138.96.89") operaeventrsX:PRIMARY> rs.conf()
profiling
Profiling. From: https://docs.mongodb.com/manual/reference/method/db.setProfilingLevel/
The profiler writes all the data it collects to the system.profile collection, a capped collection in the admin database.
db.getProfilingStatus() # db.setProfilingLevel(level, options) db.setProfilingLevel(1, { "slowms": 500 })
db.enableFreeMonitoring()
use creek_development db.setProfilingLevel(1, { "slowms": 500 }) db.getCollection('system.profile').find({}).sort({"ts": -1}).limit( 5 )
db.lineitems.getIndexes()