
安装版本: db version v4.2.6
MongoDB默认安装并没有开启用户名密码登录,这样太不安全。首先开启一个无需验证用户的MongoDB服务后,进入MongoDB的shell控制台创建用户:
创建用户后,关闭连接,进入正题:
安装路径: D:PROGRA~1\MongoDB\Server\4.2\bin\
配置文件中添加 authorization 项 ,配置文件地址如下,没有可创建 D:PROGRA~1\MongoDB\Server\4.2\bin\mongod.cfg
配置文件内容如下:
配置好之后注册服务:
启动服务:
net start MongoDB
遇到的问题:
Error1:
F CONTROL [main] Failed global initialization: BadValue: dbPath requires an absolute file path with Windows services
Error2:
Error parsing YAML config file: yaml-cpp: error at line 2
以上都是配置文件配置问题,注意文件中不要出现单引号,双引号之类的;
配置项每层缩进都是4个空格,不要用tab缩进
Error3:
控制台显示服务未注册
这个一般是注册服务的命令有引号错误或者路径错误,检查有没有少斜线。正常的注册完服务并启动时,会显示服务已开启。
新开窗口进入mongodb的shell控制台验证:
参考链接:
Mongodb学习(4)通过配置文件启动mongod
windows系统,MongoDB开启用户验证
解决“Error parsing YAML
权限认证已ok
想在shell中连接数据库,首先要在连接数据的机器上安装mongodb的客户端才可以。客户端的安装在这里不再重复,自己百度或者google一下吧。连接mongodb的命令如下:/home/test/mongodb/mongodb-2.2.3/bin/mongo 127.0.0.1:8888
这个是我的数据库配置,没有设置用户名密码。所以直接通过该命令就可以连接。
连结后会有一个默认连接的数据库。
mongodb常用命令:
查看数据库命令:
show dbs
查看集合命令:
show collections
切换数据库:
use databaseName
查询数据:
db.集合名.find()
插入数据:
db.集合名.insert({name:'test',age:1})
删除:
db.test.remove()
sql="db.test.insert({name:'test',age:1})"//定义执行的sqlecho "$sql"|/home/test/mongodb/mongodb-2.2.3/bin/mongo 127.0.0.1:8888/test --shell
注意,echo命令中的格式必须这样写,管线命令后面的是是数据库安装地址 然后是ip:端口号,斜线后是数据库名称,--shell表示通过shell交互!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)