MongoDB Memo
2021-01-27
Install mongodb for macOS
# Install mongodb with Homebrew
brew tap mongodb/brew
brew info mongodb-community
brew install mongodb-community
# MongoDB バージョン確認
$ mongod --version
db version v4.4.3
Build Info: {
"version": "4.4.3",
"gitVersion": "913d6b62acfbb344dde1b116f4161360acd8fd13",
"modules": [],
"allocator": "system",
"environment": {
"distarch": "x86_64",
"target_arch": "x86_64"
}
}
Start up mongod server
# mongod 手動起動
mongod --config /usr/local/etc/mongod.conf
# またはサービスとして自動起動ON
brew services start mongodb/brew/mongodb-community
# mongoのステータス確認
mongotop
Connect to mongod
# mongo shell起動
mongo
Usage
// mongo shell
// db一覧表示
show dbs
show databases
// 現在のデータベース表示
db
// database切り替え
use dbName
// db状態確認
db.stats()
// コレクション情報一覧表示
db.getCollectionInfos()
// コレクション名一覧表示
db.getCollectionNames()
show collections
// コレクション作成
// コレクションはデータを追加すると自動で作成される
// db.myCollection.insertOne({...}) でデータを追加する
db.myCollection.insertOne({
message: 'Hello, World!'
})
// 複数追加する時は insertMany() を使う
db.myCollection.insertMany([
{ message: 'Lorem Ipsum' },
{ message: 'こんにちは、世界!' },
{ message: 'テストです!'},
])
// コレクションのドキュメント検索
// 全件表示
db.myCollection.find({})
// 整形
db.myCollection.find({}).pretty()
// 特定のフィールドのみ
db.myCollection.find({}, { _id: 0, message: 1 })
// ドキュメントの更新
db.myCollection.updateOne(
{ message: 'Lorem Ipsum'},
{
$set: { message: "Lorem Ipsum!!!" },
$currentDate: { lastModified: true }
}
)
db.myCollection.updateMany([
{...},
{...},
{...}
])
db.myCollection.replaceOne({...})
// ドキュメントの削除
db.myCollection.deleteOne({...})
db.myCollection.deleteMany([{...}])
// 全てのドキュメントの削除
db.myCollection.deleteMany({})