MongoDB数据库在centos下的操作
简介
MongoDB是一个基于分布式文件存储的数据库。由C++语言编写。旨在为WEB应用提供可扩展的高性能数据存储解决方案。
MongoDB是一个介于关系数据库和非关系数据库之间的产品,是非关系数据库当中功能最丰富,最像关系数据库的。它支持的数据结构非常松散,是类似json的bson格式,因此可以存储比较复杂的数据类型。Mongo最大的特点是它支持的查询语言非常强大,其语法有点类似于面向对象的查询语言,几乎可以实现类似关系数据库单表查询的绝大部分功能,而且还支持对数据建立索引。
Centos下安装
下载:wget https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-4.0.4.tgz
解压:tar zxvf mongodb-linux-x86_64-4.0.4.tgz
移动文件:mv ./mongodb-linux-x86_64-4.0.4 /usr/local/mongodb
进入home创建俩文件夹:mkdir mongodb ; mkdir mongodblog
进入mongodblog创建log日志:vi mongodb.log
进入mongodb:cd /usr/local/ ; cd mongodb/ ; cd bin/ ; cd ..
启动mongo:./bin/mongod --dbpath /home/mongdb/ --logpath /home/mongodblog/mongodb.log --fork --port 27017
指令
show dbs --查询所有数据库
use youdb --切换/创建数据库
db.getName() --查看当前数据库名
db.createCollection("youcollection") --创建集合
show collections --查询所有集合
db.youcollection.save({name:"Jack",age:18,msg:"good"}) --增加
db.youcollection.find({age:18}) --查询
db.youcollection.find({age:{$gt:10}}) --查询age>20
db.youcollection.find({age:{$gte:10}}) --查询age>=20
db.youcollection.find({age:{$lt:10}}) --查询age<10
db.youcollection.find({age:{$lte:10}}) --查询age<=10
db.youcollcetion.find({age:{$gt:16,$lt:20}}) --查询age>16并且<20
db.youcollcetion.find({$and:[{age:18},{name:"Jack"}]}) --且查询
db.youcollcetion.find({$or:[{age:18},{name:"Jack"}]}) --或查询
db.youcollection.distinct("age") --去重
db.youcollcetion.find().skip(2).limit(2) --跳过第2个查询2条
db.youcollcetion.find().count() --查询总条数
db.youcollection.remove({age:18}) --删除
db.youcollection.update({name:"Jack"},{$set:{age:20},flase,true) --修改
nodejs下创建实例
var mongo = require("mongodb").MongoClient
var url = "mongodb://127.0.0.1:27017/test1"
//增
function insert(coll,obj,callback){
mongo.connect(url,function(err,db){
if(err == null){
var database = db.db("test1")
database.collection(coll).insertOne(obj,callback)
db.close()
}else{
console.log(err)
}
})
}
//批量增
function insertMany(coll,arr,callback){
mongo.connect(url,function(err,db){
if(err == null){
var database = db.db("test1")
database.collection(coll).insertMany(arr,callback)
db.close()
}else{
console.log(err)
}
})
}
//查
function find(coll,where,callback){
mongo.connect(url,function(err,db){
if(err == null){
var database = db.db("test1")
database.collection(coll).find(where).toArray(callback)
db.close()
}else{
console.log(err)
}
})
}
//改
function update(coll,where,update,callback){
mongo.connect(url,function(err,db){
if(err == null){
var database = db.db("test1")
database.collection(coll).updateOne(where,update,callback)
db.close()
}else{
console.log(err)
}
})
}
//删
function deleted(coll,where,callback){
mongo.connect(url,function(err,db){
if(err == null){
var database = db.db("test1")
database.collection(coll).deleteOne(where,callback)
db.close()
}else{
console.log(err)
}
})
}
//导出模块
module.exports = {
insert,
insertMany,
find,
update,
deleted,
}
MongoDB数据库在centos下的操作的更多相关文章
- centos 下mysql操作
MySQL名字的来历MySQL是一个小型关系型数据库管理系统,MySQL被广泛地应用在Internet上的中小型网站中.由于其体积小.速度 快.总体拥有成本低,尤其是开放源码这一特点,许多中小型网站为 ...
- Centos下MariaDB操作
MariaDB简介 MariaDB是mysql数据库的一个分支,操作几乎和mysql一样 MariaDB安装.启动.停止 # 安装 yum -y install mariadb mariadb-ser ...
- CentOS 下安装操作Memcached
Memcached 是一个高性能的分布式内存对象缓存系统,用于动态Web应用以减轻数据库负载.它通过在内存中缓存数据和对象来减少读取数据库的次数,从而提高动态.数据库驱动网站的速度.Memcached ...
- mongoDB数据库文件路径和数据操作
1.查看MongoDB在电脑上的安装路径 which mongod 2.默认mongodb 数据文件是放到根目录 data/db 文件夹下,如果没有这个文件,需要自行创建 mkdir -p /data ...
- nodejs对mongodb数据库的增删改查操作(转载)
首先要确保mongodb的正确安装,安装参照:http://docs.mongodb.org/manual/tutorial/install-mongodb-on-debian-or-ubuntu-l ...
- 69.nodejs对mongodb数据库的增删改查操作
转自:https://www.cnblogs.com/sexintercourse/p/6485381.html 首先要确保mongodb的正确安装,安装参照:http://docs.mongodb. ...
- Django 模型(数据库)-cmd下的操作
Django 模型是与数据库相关的,与数据库相关的代码一般写在 models.py 中,Django 支持 sqlite3, MySQL, PostgreSQL等数据库,只需要在settings.py ...
- tomcat在centos下的操作
一 .Tomcat启动与停止 进入Tomcat中bin所在目录 cd /usr/tomcat/bin 启动: ./startup.sh 停止: ./shutdown.sh 平常可以用这个命令来查看to ...
- 【转载】CentOS6.5_X64下安装配置MongoDB数据库
[转载]CentOS6.5_X64下安装配置MongoDB数据库 2014-05-16 10:07:09| 分类: 默认分类|举报|字号 订阅 下载LOFTER客户端 本文转载自zhm&l ...
随机推荐
- Spring Boot中使用@Scheduled创建定时任务
我们在编写Spring Boot应用中经常会遇到这样的场景,比如:我需要定时地发送一些短信.邮件之类的操作,也可能会定时地检查和监控一些标志.参数等. 创建定时任务 在Spring Boot中编写定时 ...
- 【Java初探01】——Java简介及相关
Java 简介 java 是一种高级的面向对象的程序设计语言,使用Java语言编写的程序时跨平台的.从pc到手机,都有Java开发的程序和游戏,Java程序可以在任何计算机,操作系统和支持的Java的 ...
- 编译lua-5.3.5时出错解决方法
问题描述: 执行 make linux test 过程出现错误,错误信息如下: “ lua.c:82:31: fatal error: readline/readline.h: No such fil ...
- odoo开发笔记 -- 多个视图共用一个模型
除了写序列优先绑定之外, 窗口引用的视图id也要绑定,否则页面加载的时候,可能不是自己需要显示的视图.例如:<field name="view_id" ref="c ...
- 改善android性能工具篇【zipalign】
什么是Zipalign? Zipalign是一个android平台上整理APK文件的工具,它首次被引入是在Android 1.6版本的SDK软件开发工具包中.它能够对打包的Android应用 ...
- Kafka消费异常处理
org.apache.kafka.clients.consumer.CommitFailedException: Commit cannot be completed since the group ...
- Android 开发服务类 05_ ApkPatchDemo
APP 增量更新服务端[https://github.com/cundong/SmartAppUpdates] import com.cundong.common.Constants; import ...
- HYPER-V的安装和双机调试的配置(一)
在上一篇文章中,我们已经安装好了VS2017以及WDK,现在我们就需要创建双机调试的环境, 因为本人的工作环境问题,不能使用WMWARE进行虚拟机的安装,因此就针对HYPER-V这个的虚拟机来进行双机 ...
- HDU 3613 Best Reward(KMP算法求解一个串的前、后缀回文串标记数组)
题目链接: https://cn.vjudge.net/problem/HDU-3613 After an uphill battle, General Li won a great victory. ...
- HDU 1242 Rescue(BFS+优先队列)
题目链接: http://acm.hdu.edu.cn/showproblem.php?pid=1242 题目描述: Problem Description Angel was caught by t ...