写在前面:
本来想直接写个node+mongodb的,但是因为还没整理好和为了纪念搞MongoDB时踩了坑,所以就先写个MongoDB安装和配置铺铺路。
在安装使用之前,我们应该要明白为什么选择MongoDB呢? 大致的理由有三
- 只要会js就会mongodb(js直接操作mongodb)
- mongodb对js的兼容性最好
- mongodb存数据就是存JSON
官网下载下载的话直接官方 https://www.mongodb.com/download-center#community 下载成功后点击msi文件直接安装
window7安装MongoDB存在的问题
- 能的话最好升级到window10
- 不能就按下面的解决步骤:
1.将你的操作系统升级到window7最新版
2.安装 vc_redist.x64.exe
3.如果你的电脑是32位的,再安装32位的mongodb软件 mongodb-win32-i386-3.2.11-signed.msi
配置运行环境
- 创建存放数据的文件夹(划重点:这里是必须的,因为启动的时候需要这条路径)
在任意没有中文,没有空格的目录下新建文件夹,如c:\data,在文件夹下存放MongoDB数据库文件与日志文件,如:
D:\MongoDB\data\db用于存放mongodb的数据文件
D:\MongoDB\data\log用于存放mongodb的日志文件 - 创建配置文件
打开MongoDB的安装目录如“D:\MongoDB\Server\3.6\bin”,并在此目录下新建一个mongo.config文件,文件内容如下:
##数据库目录##
dbpath=D:\MongoDB\data\db
##日志输出文件##
logpath=D:\MongoDB\data\log\db.log
- 安装Windows服务
使用cmd进入命令行
使用cd切换目录到安装目录下,如:cd D:\MongoDB\Server\3.6\bin
安装MongoDB服务且指定配置文件,如:
mongod --config "D:\MongoDB\Server\3.6\bin\mongo.config" --install
4.添加环境变量
环境变量
使用cmd输入mongod -v 能看到版本号就算是安装好了
启动mongodb服务器
方式一:通过终端指令去启动
1.首先在终端切换到你的MongoDB的安装目录的bin目录下(当然如果配置了环境变量在哪个目录下都可以了)
2.在终端执行: mongod.exe --dbpath D:\MongoDB\data ,如果成功启动就表示一切都OK了
注意点:
-
32 位版本使用下面的命令启动数据服务:
mongod --dbpath D:\MongoDB\data --journal --storageEngine=mmapv1
-
执行完上面的命令并成功开启 MongoDB 数据服务实例之后,就把该控制台最小化到一边就可以了,
千万不要关闭,否则无法连接,如果对数据库的操作结束,可以打开该控制台通过Ctrl + C
关闭。
方式二:方式一的延续,把上面的指令做成一个批处理文件.bat
下面为一示例:
@echo off
echo 启动MongoDB......
::进入d盘
D:
cd \Program Files\MongoDB\bin
mongod --dbpath "D:\MongoDB\data\db"
:: 指定端口
:: mongod --dbpath "D:\Program Files\MongoDB\data" --port 10001
方式三:将MongoDB服务器作为Windows服务运行
ps: 其实就是配置运行环境中所说的安装window服务
请注意,你必须有管理权限才能运行下面的命令。执行以下命令将MongoDB服务器作为Windows服务运行:
mongod.exe --bind_ip yourIPadress --logpath "D:\MongoDB\dbConf\mongodb.log" --logappend --dbpath "D:\MongoDB\data\db" --port yourPortNumber --serviceName "YourServiceName" --serviceDisplayName "YourServiceName" --install
例子:
mongod.exe --bind_ip 127.0.0.1 --logpath "D:\MongoDB\data\server_log\mongodb.log" --logappend --dbpath "D:\MongoDB\data" --port 27017 --serviceName "MongoDBServer" --serviceDisplayName "MongoDBServerDisplayName" --install
补充:从Windows服务中卸载 MongoDB服务
1.先停止要删除的服务(比如MongoDBServer)
2.以管理员身份运行cmd,在cmd中输入: sc delete 服务名称(比如MongoDBServer)
注意点:
1.mongodb.log 这个日志文件一定要先创建好,才能执行指令
2.必须要以管理员的身份打开cmd窗口,并运行
可视化客户端工具
我用的是Studio-3T(同事推荐的就用了。。。)
网上多推荐的是 跨平台的robomongo : https://robomongo.org/download
反正好用就行
基本操作命令
可以参考:
http://www.yiibai.com/mongodb/mongodb_create_collection.html
http://www.runoob.com/mongodb/mongodb-tutorial.html
-
show dbs
查看当前服务实例上所有的数据库 -
use 数据库名称
如果数据库不存在,则创建数据库,否则切换到指定数据库。 -
db
查看当前所处的数据库 -
show collections
查看当前数据库中所有的集合 -
db.createCollection("集合名称")
创建集合 -
db.集合名称.insert({数据文档})
插入的每一条文档会自动帮我们生成一个_id字段,它是mongodb自动维护的,不需要我们关心 -
db.集合名称.find()
查询指定集合中所有的数据
可以通过 db.集合名称.find().pretty() 美化输出格式
默认是查询所有,可以通过:db.集合名称.find({查询条件}) 按条件查询集合中的数据 -
db.集合名称.update({更新条件}, {要更新的字段})
更新指定集合数据,注意点,要更新的字段一定要这样写 {$set:{字段的名称:字段的值}}, -
db.集合名称.remove({删除条件})
删除指定集合中的数据 -
exit
退出当前操作 -
cls
清屏
注意点:更新和删除时一般都需要带条件,除非是全部更新与全部删除,不过全部更新与全部删除这样很危险,实际操作过程中很少
使用 Node 操作 MongoDB
- 安装 MongoDB 官方提供的驱动包:
npm install --save mongodb
具体操作方式请参考官方文档:https://www.npmjs.com/package/mongodb - 还有在node.js异步环境下对mongodb进行便捷操作的对象模型工具 mongoose
npm install --save mongoose
具体操作方式请参考官方文档:https://www.npmjs.com/package/mongoose
这两个就是下一篇会写,看哪个好用呗。
网友评论