MongoDB的安装、配置和常用命令

数据库:

数据库:专门用来存储数据查询数据,为其他的应用程序提供对应的数据服务

数据库可以分为两类:sqlite数据库 nosql数据库

sqlite:传统的关系型数据库,mysql,sqlServer,oracle,都是sql数据库;

使用sql(structure query language)主要的特点是语言结构

nosql:(not only sql)不仅仅是数据库

mongodb属于nosql文档行数据库,直接存对象,使用javascript来进行操作

数据库语句是作为与数据库进行数据交互的唯一标准语言


MongoDB的安装和配置:

1. 安装MongoDB(略)

2. 环境变量配置

(1)鼠标右键选择“计算机”“属性”,会弹出一个框,点击 “高级系统设置”,会弹出一个系统属性,找到环境变量,再找到系统变量里面的Path,点击编辑;

(2)找到自己安装的目录,一定要进入bin这个目录里面,把这个目录拷贝到变量值里面,后面要加一个“;”,然后点击确定;(到此环境变量配好了)

3. 创建数据库文件的存放位置

在data的目录下,创建一个db文件夹   D:\MongoDB\data\db

4. 启动MongoDB服务

(1)打开cmd命令行护着用Windows+R键打开,输入cmd;

(2)进入D盘(就是你安装的目录),D:\MongoDB\bin;(一定要先进入D盘,cd到你的目录 cd MongoDB,然后在cd bin这个目录下);

(3)输入命令启动MongoDB,mongod   --dbpath D:\MongoDB\data\db     这个是你安装的目录 ,回车;

(4)在浏览器输入http://localhost:27017,如果在浏览器中出现下面一段英文说明成功了;

It looks like you are trying to access MongoDB over HTTP on the native driver port.

5. 配置本地windows MongoDB 服务 

这样可设置为 开机自启动,可直接手动启动关闭,可通过命令行net start MongoDB 启动。该配置会大大方便。也不要在进入bin的目录下启动了;

(1)先在data文件下创建一个新文件夹log(用来存放日志文件)

(2)在MongoDB新建配置文件mongo.config,这个是和bin目录同级

(3)用记事本打开mongo.config  ,并输入下面两个命令,然后保存

dbpath=D:\MongoDB\data\db

logpath=D:\MongoDB\data\log\mongo.log

 (4)用管理员身份打开cmd,然后一次进入你的bin的目录下D:\MongoDB\bin

输入: 

mongod -dbpath "D:\MongoDB\data\db" -logpath "D:\MongoDB\data\log\mongo.log" -install -serviceName "MongoDB"

 如果输入命令出现错误的话,先删除服务sc delete MongoDB,再次输入上个命令就好了;

(5)当我们通过输入net start MongoDB启动的时候给我报错时:

解决方法:

在MongoDB>data>db找到这个目录,删除mongodb.lock这个文件;

删除这个文件之后,再次运行  net start MongoDB 这个命令,服务已经能启动了,说明MongoDB已经配置好了;


MongoDB常用命令:

net start MongoDB   开启服务

net stop MongoDB   关闭服务

show dbs    用于查询mongodb中所有的数据库

use students   创建数据库名字

db   显示当前数据库

show collections   查看当前数据库中的所有表

db.createCollection("xxxx")   在当前数据库中创建一张表,表名叫xxxx

db.表名.insert({})    在当前数据库下的表中插入一条数据,数据格式为对象格式

db.表名.find()    查询表中所有的数据

条件查询:

db.表名.find({name: "xxx"})    查询出所有name为xxx的数据

db.表名.find({name: "xxx", age: 25})   查询出表中叫xxx年龄为25的数据

db.表名.find({name: /^小/})   查询表中所有小开头的数据,查询的条件可以是正则表达式

db.表名.find({age: {$lt:30}})    查询表中年龄小于30的人  ($lt小于   $gt大于    $lte小于等于    $gte大于等于)

db.表名.find({age: {$lt: 60, $gt: 20}})   年龄在20~~60之间的数据

db.表名.find({}, {name: 1})    代表查询表中的数据但是只要name列

db.表名.find().count()    本次查询结果一共多少条

db.表名.find().sort({age: 1})    把表中所有的age按升序排列 -1是降序

db.表名.find().skip(n).limit(m)     从查询结果中,挑过前面n条取后面m条,一般都是分页查询用

db.表名.remove({k: v})     删除表中所有符合条件的数据,大部分都是以主键(_id)作为删除条件

db.表名.remove({k: v})    删除表中所有符合条件的数据,大部分都是以主键(_id)作为删除条件

db.表名.update({name: "小"}, {$set: {age: 100}})     将表中姓名为小的人的年龄改为100

ps:

nodejs在操作mongodb的时候还是以对象的形式去关联,但是很多方法都是和sql语句方法一样;







 


 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值