2022-05-19 MongoDB部分操作記錄

// 更新文檔

db.getCollection("less").update({"start":"update"},{$set:{"start":"new"}})

// 查找文檔

db.getCollection("userProfile").find({"status":1}).limit(1).pretty()
db.getCollection("less").find().limit(10).pretty()

// 創(chuàng)建刪除集合
// 執(zhí)行insert的時候呜舒,如果集合不存在麸塞,則會自動創(chuàng)建這個集合
// 刪除集合 remove

db.newTable.insert({"start":"start"})
db.getCollection("less").insert({"start":"start2"})
db.getCollection("less").remove({"start":"start1"})

// 排序 1 -1(倒序)

db.getCollection("less").find().limit(10).sort({
    "_id":  - 1
}).pretty()

// or 與 and 的查詢條件 并過濾展示字段

db.getCollection("userProfile").find(
    {
        "countryCode": "CN",
        $or:[
            {
                "nickName": "Hana"
            },
            {
                "nickName": "JackIos"
            }
        ]
    },
        {
            _id:0
        }
).limit(10)

// 結(jié)果處理
// 連表查詢 過濾 分組

db.getCollection("userProfile").aggregate(
    [
        {
            $lookup: {  // 連表
                from: "userVedio",
                localField: "_id",
                foreignField: "userId",
                as: "userVideo"
            }
        },
                {
                        $match:{    // 過濾條件
                            "_id":3103255
                        }
                },
                {
                        $unwind:{   // 拆分?jǐn)?shù)組
                            path:"$userVideo"
                        }
                },
                {
                        $group:{    // 分組
                            _id:"$_id",
                            callVideo:{
                                $min:"$userVideo.url"
                            }
                        }
                },
        {
            $limit: 10
        }
    ]
)

// 公式/數(shù)據(jù)運(yùn)算

// (>) 大于 - $gt
// (<) 小于 - $lt
// (>=) 大于等于 - $gte
// (<= ) 小于等于 - $lte

// 聚合 等價于 mysql 的 group by city

db.getCollection("userProfile").aggregate([
    {
        $match: {
            "status": 1,
            "_id": 100000
        }
    },
    {
        $group: {
            _id: "$_id",
            age: {
                $min: "$age"
            },
            countryCode: {
                $min: "$countryCode"
            },
            status: {
                $min: "$status"
            }
        }
    },
    {
        $project: {
            _id: 1,
            age: 1,
            countryCode: 1,
            status: 1
        }
    },
    {
        $sort: {
            "_id": - 1
        }
    },
    {
        $limit: 10
    }
])

// 數(shù)據(jù)庫監(jiān)控 狀態(tài)查詢

db.serverStatus()

// 鎖信息監(jiān)控

db.serverStatus().globalLock
{
    "totalTime" : NumberLong("2651301900000"),      //自上次發(fā)生lock以來的時間
    "currentQueue" : {          //鎖等待隊(duì)列信息
        "total" : 0,            //因?yàn)殒i而產(chǎn)生的排隊(duì)的總數(shù)
        "readers" : 0,          //等待讀鎖而產(chǎn)生的排隊(duì)數(shù)(kQueuedReader)
        "writers" : 0           //等待寫鎖而產(chǎn)生的排隊(duì)數(shù)(kQueuedWriter)
    },
    "activeClients" : {         //活躍連接數(shù)信息
        "total" : 38,           //當(dāng)前活躍連接數(shù)
        "readers" : 0,          //當(dāng)前執(zhí)行讀操作的活躍連接數(shù)(kActiveReader)
        "writers" : 0           //當(dāng)前執(zhí)行寫操作的活躍連接數(shù)(kActiveWriter)
    }
}

// 連接信息監(jiān)控

db.serverStatus().connections
{
    "current": 5,                       //當(dāng)前連接數(shù)
    "available": 814,                   //剩余可以連接數(shù)
    "totalCreated": NumberLong(186)     //截止到現(xiàn)在創(chuàng)建連接數(shù)
}

// 內(nèi)存信息監(jiān)控

db.serverStatus().mem
{
    "bits" : 64,                    //64位
    "resident" : 245,               //物理內(nèi)存消耗
    "virtual" : 1262,               //虛擬內(nèi)存消耗
    "supported" : true,             //支持顯示額外內(nèi)存信息
    "mapped" : 0,                   //映射內(nèi)存
    "mappedWithJournal" : 0         //除了映射內(nèi)存外還包括journal日志消耗的映射內(nèi)存
}

// 錯誤信息監(jiān)控

db.serverStatus().asserts
{
    "regular": 0,           //服務(wù)啟動后asserts錯誤個數(shù)
    "warning": 0,           //服務(wù)啟動后warning個數(shù)
    "msg": 0,               //服務(wù)啟動后message asserts個數(shù)
    "user": 22,             //服務(wù)啟動后user asserts格式
    "rollovers": 0          //服務(wù)啟動后重置次數(shù)
}

// 網(wǎng)絡(luò)流量監(jiān)控

db.serverStatus().network
{
    "bytesIn" : NumberLong(1013083142),     //網(wǎng)絡(luò)入流量
    "bytesOut" : NumberLong(1123552013),    //網(wǎng)絡(luò)處流量
    "numRequests" : NumberLong(3592562)     //累積請求數(shù)
}

// 數(shù)據(jù)庫狀態(tài)

db.stats()
{
    "db" : "test",                          //數(shù)據(jù)庫名
    "collections" : 5,                      //數(shù)據(jù)庫中集合數(shù)
    "objects" : 139,                        //數(shù)據(jù)庫預(yù)估數(shù)據(jù)行
    "avgObjSize" : 63.65467625899281,       //平均每行數(shù)據(jù)大小,單位為bytes
    "dataSize" : 8848,                      //當(dāng)前數(shù)據(jù)庫數(shù)據(jù)大小假夺,單位為bytes
    "storageSize" : 1077248,                //當(dāng)前數(shù)據(jù)庫物理存儲大小淮蜈,單位為bytes
    "numExtents" : 5,                      
    "indexes" : 2,                          
    "indexSize" : 16352,                    //索引空間大小,單位為bytes
    "fileSize" : 67108864,                  //數(shù)據(jù)庫預(yù)分配文件大小
    "nsSizeMB" : 16,
    "extentFreeList" : {
        "num" : 1,
        "totalSize" : 32768
    },
    "dataFileVersion" : {
        "major" : 4,
        "minor" : 22
    },
    "ok" : 1
}

// 查看當(dāng)前活躍會話

db.currentOp()
{
    "inprog" : [
        {
            "desc" : "conn10",
            "threadId" : "0x3fdf860",
            "connectionId" : 10,
            "opid" : 380692,                        //db.killOp使用的就是該opid
            "active" : true,                        //是否活躍
            "secs_running" : 4,                     //執(zhí)行時間(秒)
            "microsecs_running" : NumberLong(4603324),
            "op" : "insert",                        //執(zhí)行操作類型
            "ns" : "test.cc",                       //執(zhí)行操作數(shù)據(jù)庫
            "insert" : {                            //執(zhí)行操作語句
                "_id" : ObjectId("5bee323020e268b4d947a580"),
                "name" : "aa"
            },
            "client" : "127.0.0.1:42066",           //執(zhí)行操作客戶端
            "numYields" : 0,
            "locks" : {                             //執(zhí)行操作需要持有鎖
                "Global" : "w"
            },
            "waitingForLock" : true,                //是否鎖等待 已卷?
            "lockStats" : {
                "Global" : {
                    "acquireCount" : {
                        "r" : NumberLong(1),
                        "w" : NumberLong(1)
                    },
                    "acquireWaitCount" : {
                        "w" : NumberLong(1)
                    },
                    "timeAcquiringMicros" : {
                        "w" : NumberLong(22503637)
                    }
                }
            }
        }
    ],
    "fsyncLock" : true,                             //是否全局鎖定數(shù)據(jù)庫
    "info" : "use db.fsyncUnlock() to terminate the fsync write/snapshot lock"
}

// 殺掉慢會話

db.killOp(380692)
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末梧田,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌裁眯,老刑警劉巖鹉梨,帶你破解...
    沈念sama閱讀 211,561評論 6 492
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異穿稳,居然都是意外死亡存皂,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,218評論 3 385
  • 文/潘曉璐 我一進(jìn)店門逢艘,熙熙樓的掌柜王于貴愁眉苦臉地迎上來旦袋,“玉大人,你說我怎么就攤上這事它改〔略鳎” “怎么了?”我有些...
    開封第一講書人閱讀 157,162評論 0 348
  • 文/不壞的土叔 我叫張陵搔课,是天一觀的道長胰柑。 經(jīng)常有香客問我,道長爬泥,這世上最難降的妖魔是什么柬讨? 我笑而不...
    開封第一講書人閱讀 56,470評論 1 283
  • 正文 為了忘掉前任,我火速辦了婚禮袍啡,結(jié)果婚禮上踩官,老公的妹妹穿的比我還像新娘。我一直安慰自己境输,他們只是感情好蔗牡,可當(dāng)我...
    茶點(diǎn)故事閱讀 65,550評論 6 385
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著嗅剖,像睡著了一般辩越。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上信粮,一...
    開封第一講書人閱讀 49,806評論 1 290
  • 那天黔攒,我揣著相機(jī)與錄音,去河邊找鬼强缘。 笑死摇肌,一個胖子當(dāng)著我的面吹牛抛蚤,可吹牛的內(nèi)容都是我干的凌净。 我是一名探鬼主播什荣,決...
    沈念sama閱讀 38,951評論 3 407
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼商虐!你這毒婦竟也來了觉阅?” 一聲冷哼從身側(cè)響起崖疤,我...
    開封第一講書人閱讀 37,712評論 0 266
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎留拾,沒想到半個月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體鲫尊,經(jīng)...
    沈念sama閱讀 44,166評論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡痴柔,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,510評論 2 327
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了疫向。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片咳蔚。...
    茶點(diǎn)故事閱讀 38,643評論 1 340
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖搔驼,靈堂內(nèi)的尸體忽然破棺而出谈火,到底是詐尸還是另有隱情,我是刑警寧澤舌涨,帶...
    沈念sama閱讀 34,306評論 4 330
  • 正文 年R本政府宣布糯耍,位于F島的核電站,受9級特大地震影響囊嘉,放射性物質(zhì)發(fā)生泄漏温技。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,930評論 3 313
  • 文/蒙蒙 一扭粱、第九天 我趴在偏房一處隱蔽的房頂上張望舵鳞。 院中可真熱鬧,春花似錦琢蛤、人聲如沸蜓堕。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,745評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽套才。三九已至,卻和暖如春慕淡,著一層夾襖步出監(jiān)牢的瞬間霜旧,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 31,983評論 1 266
  • 我被黑心中介騙來泰國打工儡率, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留挂据,地道東北人。 一個月前我還...
    沈念sama閱讀 46,351評論 2 360
  • 正文 我出身青樓儿普,卻偏偏與公主長得像崎逃,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子眉孩,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,509評論 2 348

推薦閱讀更多精彩內(nèi)容

  • 關(guān)于Mongodb的全面總結(jié) MongoDB的內(nèi)部構(gòu)造《MongoDB The Definitive Guide》...
    中v中閱讀 31,906評論 2 89
  • 這些是最常用最基本的指令啦~ show dbs:顯示數(shù)據(jù)庫列表 show collections:顯示當(dāng)前數(shù)據(jù)庫中...
    十八人言閱讀 356評論 0 2
  • 數(shù)據(jù)庫操作語法 數(shù)據(jù)庫操作 -show dbs查詢本地數(shù)據(jù)庫列表 -db查詢當(dāng)前所在數(shù)據(jù)庫 -use 數(shù)據(jù)庫名稱創(chuàng)...
    琉可OuO閱讀 228評論 0 0
  • 一个绍、MongoDB簡介 1.概述 ? MongoDB是一個基于分布式文件存儲的數(shù)據(jù)庫勒葱,由C++語言編寫。旨在為WE...
    鄭元吉閱讀 976評論 0 2
  • emm...其實(shí)也是因?yàn)楹芫脹]有更新過了巴柿,再加上最近剛好系統(tǒng)的學(xué)完了下mongoDB凛虽,就干脆發(fā)到這上面來了。 數(shù)據(jù)...
    慕小牧閱讀 660評論 0 0