MongoDB基础运维

mongodb的基础概念介绍

database #数据库

collection #集合,类似于mysql中的表

filed #类似于mysql中字段

document #每行的记录

连接客户端

mongo ip:port

例如mongo 127.0.0.1:27017

mongo客户端的命令自动提示功能

使用tab键

查询所有的库,默认自带三个库,mongodb自带的三个库不要动

show dbs;

show databases;

mongo客户端提供一个正确关闭mongodb服务器的方法

use admin

db.shutdownServer()

mongodb创建库、创建集合、插入数据(key value的字典方式插入)

use shijiange #use即可,无需显式创建数据库

db.myuser.insert({ name: 'shijiange1', age:28 }) #无需显示创建collection。name、age为filed,shijiange1、28为值

show dbs;

show collections;

db.myuser.insert( {'name': 'shijiange2', age: 27} )

db.myuser.insert( {'name': 'shijiange3', age: 26} )

查询集合数据,默认有个_id

use shijiange

db.myuser.find() #查询所有数据

db.myuser.find( { name: 'shijiange1' } )

db.myuser.find( { age: 26 } )

删除集合数据

use shijiange;

db.myuser.remove({ name: 'shijiange2' }) #有条件的删除

db.myuser.find()

db.myuser.remove( {} ) #删除数据

db.myuser.drop() #删除集合

集合的field不用固定,一般来说不这样子使用

db.myuser.insert( {age: 28} )

db.myuser.insert( {'location': 'hangzhou'} )

db.myuser.find()

更新集合数据

use shijiange;

db.myuser.update({ 'location': 'hangzhou' }, { $set: { 'location': 'shanghai' } })

db.myuser.update({ age: 28 }, {$set: { age: 30 }})

如果是想更新已存在的记录中,加一列数据:

db.test.update({age:20},{$set:{name:'yyy',age:20}})

{ "_id" : ObjectId("653f67a86ecdb8d662cfc818"), "age" : 20, "name" : "yyy" }

删除数据库

use shijiange

db.dropDatabase()

相关推荐
葫芦和十三14 小时前
图解 MongoDB 13|WiredTiger 存储引擎:B-tree、页和 checkpoint 三件套
后端·mongodb·agent
葫芦和十三14 小时前
图解 MongoDB 14|Cache 与淘汰:WiredTiger 的内存治理
后端·mongodb·面试
SelectDB19 小时前
阶跃星辰基于 SelectDB 构建 PB 级 Agent 可观测平台
大数据·数据库·aigc
这个DBA有点耶20 小时前
GROUP BY优化全解:如何写出既不丢数据又飞快的分组查询
数据库·mysql·架构
掉头发的王富贵1 天前
【StarRocks】极限十分钟入门StarRocks
数据库·sql·mysql
Nturmoils1 天前
WHERE 条件别凭习惯写,常用查询先跑一遍
数据库
Databend2 天前
在 AWS 中国峰会逛了一天,我在 Databend 展台看到了 Agent 数据基础设施的新思路
数据库·人工智能·agent
葫芦和十三2 天前
图解 MongoDB 12|索引与查询优化地图:一条主线,三个判断轴
后端·mongodb·agent
葫芦和十三2 天前
图解 MongoDB 11|慢查询排查闭环:从 Profile 到 explain 的分层路径
后端·mongodb·agent
葫芦和十三3 天前
图解 MongoDB 09|explain 再读:从 queryPlanner 到 executionStats
后端·mongodb·agent