win10安装mongodb踩的坑

                                win10安装mongodb踩的坑

安装简述:zip方式直接解压就ok,msi方式直接全部下一步,如果需要修改安装路径可以点击如下图地方修改

然后到了最后一步,千万不要点击左下角的勾选,不然你就等吧。。。

安装完成后,切记做两件事以备后患

1.创建db和log,这个是mongodb需要的,不然可能报1053错误

示例:

2.在环境变量的path中把mongodb的bin添加进去

ps1:注意如果准备做用户认证的话,最好不要先把mongodb做成服务,不然到时候还得删除还可能引起其他问题,

如果想做连接mongodb要用户认证的话,最好先把用户添加好了之后,再去把mongodb做成服务

 

ps2:类似mysql  navicat那种可视化工具可以下载个 Robo 3T :

踩坑1:zip的安装方式请忽略,如果使用msi的安装包安装,有可能到最后一步直接卡死,安装界面一直显示还要一会时间

解决办法:安装的最后一步不要勾选左下角的Install MongoDB Compass(不要勾选、不要勾选、不要勾选),然后你就会发现很快就安装好了。

踩坑2:安装成功了,环境变量也配了,然后去cmd中输入mongod和mongo都是没有该命令,原本我以为刚配置没反应过来,然后把cmd关了,去其他地方开cmd进去输入还是一样,怎么样都说没有该指令。

解决办法:终极大法,重启电脑,然后再进去居然可以了,不知道是不是我电脑有问题,这里我是这样解决的

踩坑3:把mongodb配成服务时,服务启动报错,错误1607,进程意外终止

然后在网上搜了很多解决办法

基本上都是:

先删除  data/db/mongod.lock 

然后   mongod.exe --config E:\mongodata\mongod.cfg --remove

           mongod.exe --config E:\mongodata\mongod.cfg --install

然后他们就可以了,就能成功启动了,但是我是怎么都不行,一直报1607,重启也没用

 

最后:我感觉可能是配置文件的问题,因为我是用的yml格式的配置文件配置的,但是死活找不出配置文件有什么问题

systemLog:
  destination: file
  path: "E:/mongodata/log/mongod.log"
  logAppend: true
storage:
  journal:
    enabled: true
  dbPath: "E:/mongodata/db"
net:
   bindIp: 0.0.0.0#设置远程登陆
   port: 27017
setParameter:
   enableLocalhostAuthBypass: true
security:
   authorization: enabled

上面是我的配置,有人说可能是用了tab做缩进,但是我发现不是,如果用了tab在--install的步骤就会报错

我这个配置文件是可以install成功,但是服务无法启动,最后换了一种方式,解决办法如下

ps:下面的命令操作请使用管理员身份打开cmd

1.先删除  data/db/mongod.lock 

2.sc delete MongoDB(这个和上面那个remove作用一样,也可以就用那个)

ps:这里第三点我没有采用配置文件了,--auth如果没有做用户认证的不用加

3.mongod --dbpath E:\mongodata\db --logpath E:\mongodata\log\mongod.log --install --auth --serviceName "MongoDB"

 

命令行输入:net start MongoDB   然后就OK了

测试一波

简单指令集合:

mongod --dbpath E:\mongodata\db --logpath E:\mongodata\log\mongod.log --install --auth --serviceName "MongoDB"

sc delete MongoDB

net start MongoDB

net stop MongoDB

db.createUser({user:"admin",pwd:"123456",roles:["root"]})

db.createUser({user:"root",pwd:"123456",roles:[{role:"dbOwner",db:"cjy"}]})

show dbs

show collections

use cjy

db.auth("root","123456")

db.aaa.save({name:'cjy',sex:'男'})

db.aaa.find()

db.aaa.remove({name:'cjy'})

db.aaa.update({name:'cjy'},{$set:{sex:'女'}})

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值