mongodb

2021/03/16

参考资料

  • MongoDB中文社区:https://mongoing.com/
  • MongoDB中文网手册:https://mongodb.net.cn/manual/
  • MongoDB中文手册 官方文档中文版: https://docs.mongoing.com/
  • https://www.runoob.com/mongodb/mongodb-tutorial.html
  • https://www.runoob.com/mongodb/mongodb-java.html
  • 下载地址:https://www.mongodb.com/try/download/community
  • http://www.mongodb.org/dl/win32/x86_64

1 windows环境单点安装

MongoDB下载、安装、配置、使用,如何下载MongoDB数据库,MongoDB入门

//1.解压或者安装程序安装

//2.配置环境变量
path添加 D:\mongodb-win32-x86_64-2008plus-ssl-3.6.20\bin

//3.创建数据目录/data/mongodb 

//4.启动mongodb
mongod --dbpath d:\data\mongodb

// 启动Mongo客户端命令:
mongo --host 192.31.3.206 --port 27017

//4-1 配置config启动,添加windows服务 https://blog.csdn.net/seven_coder/article/details/62223155
mongod.exe --logpath D:\MongoDB\log\mongodb.log --logappend --dbpath D:\MongoDB\data --directoryperdb --serviceName MongoDB --install --auth

//5.链接
mongo

2 Linux环境单点安装

//1.解压
tar -zxvf mongodb-linux-x86_64-4.0.12.tgz 

//2.创建日志目录和日志目录
cd /usr/local/mongodb
mkdir data
mkdir logs

//3.在bin目录下创建配置文件
vim mongodb.conf

#数据文件存放目录
dbpath = /usr/local/mongodb/data

#日志文件存放目录
logpath = /usr/local/mongodb/logs/mongodb.log

#端口
port = 27017

#以守护程序的方式启用,即在后台运行
fork = true

#允许远程访问,或者直接注释,127.0.0.1是只允许本地访问
bind_ip = 0.0.0.0

#设置每个数据库将被保存在一个单独的目录
directoryperdb = true

#以追加的方式记录日志
logappend = true

#这个选项可以过滤掉一些无用的日志信息,若需要调试使用请设置为false
quiet = true

//4.启动关闭
cd /usr/local/mongodb/bin
./mongod -f mongodb.conf

#关闭
./mongod --shutdown

3 Linux环境MongoDB 3.4 分片副本集集群

4 命令行增删改查操作

//6.查看命令
//创建用户
db.createUser({user:"test",pwd:"123456",roles:[{role:"root",db:"admin"}],mechanisms:["SCRAM-SHA-1"]})

//显示所有库:
show dbs

//显示当前库:
db

//切换库:
use test

//显示集合:
show collections

//显示库信息:
db.stats()

//显示集合startup_log所有文档:
db.startup_log.find()

// 加上.pretty() 让显示结果更友好明了!
db.startup_log.find().pretty()

//查询数据条数:
db.sys_district.count();

//7.操作命令
//use命令具有打开、 切换、 创建数据库的功能: 
// 如果打开的这个数据库存在就是打开这个数据库。
// 如果打开的是一个不存在的数据库(没有这个数据库名字),那么就会创建一个同名的数据库
//创建库:
use student

//删库: 
db.dropDatabase()

//插入文档(记录):
db.user.insert({"name":"lilei"}) 或者 db.user.save({"name":"hanmeimei"}) 

//创建集合:
db.createCollection("user")

//删除集合:
db.user.drop()

//带条件查询10条数据
db.sys_district.find({"_id":{"$lt": 900000}}).limit(10);

//带正则条件查询:
db.pushVO.find({"userId":"8837003566923103412","dateNumber":20150930, "data.title":/68736873/}); 

//查询岳飞
users.find({"username":"yuefei"})

//查询喜欢西安和上海user
users.find({ "favorites.cites": { "$all": [ "西安","上海"]}})

//查询喜欢西安或上海的人
users.find({ "favorites.cites": { "$in": [ "西安","上海"]}})

//and 查询姓名为卫青 国家为中国的数据
users.find({$and:[{"username":"weiqing"},{"country": "china"}]}).pretty()
users.find({"username":"weiqing","country":"china"}).pretty()

//or查询名字为卫青或岳飞的数据
users.find({$or:[{"username":"yuefei"},{"username":"weiqing"}]}).pretty()

//查询国家带c,姓名为岳飞或者卫青的
users.find({$and:[{"country":{"$regex":".*c.*"}},{$or:[{"username":"weiqing"},{"username":"yuefei"}]}]}).pretty()

// 更新某些字段
db.sys_district.update({ "_id" : 411502 }, { $set : { "areaname" : "浉河区", "areashortname" : "浉河"} });

// 修改全部
db.users.updateMany({ "username": "yuefei"},{ "$set": { "age": 6}});

// 修改一条数据
db.users.update({"username":"yuefei"},{"$set":{"age":100}})

// 找到岳飞,并且添加电影,孙子兵法,三十六计
db.users.updateMany({"username":"yuefei"},{"$addToSet":{"favorites.movies":{"$each":["孙子兵法","三十六计"]}}})

// 删除数据
db.sys_district.remove({"areaname":{$regex:"辖区"}});

// 删除名字为岳飞的
db.users.deleteMany({"username":"yuefei"})

// 删除名字为卫青的并且名字在20-30之间
db.users.deleteMany({"username":"weiqing"},{"$and":[{"age":{"$gt":20},"age":{"$lt":30}}]})

// 给字段加索引
db.pushVO.ensureInd

//导出Collection:
./mongoexport --host 192.31.3.153 --db db_buffer --collection sys_street --out /home/sunfg/sys_street_20190311.json

//导入Collection:
./mongoimport --db db_buffer --host 192.31.3.153 --collection sys_street --upsert --file sys_street_20190223.json

问题记录

Post Directory

扫码关注公众号:暂无公众号
发送 290992
即可立即永久解锁本站全部文章