来源:https://blog.csdn.net/zouchangan/article/details/109324828
最新版本的Mongodb安装教程
今天准备安装MongoDB,结果看了网上一些教程,基本上都过时了,都需要自建配置文件和路径,
网上很多都过时了,一上来就要建立配置文件的都是过时的,
新版本的MongoDB自带了配置文件,mongod.cfg在bin目录下,无需自己新建,若有需要,可以对该文件进行修改即可!
算是一波十折
注意:
梳理一下正确流程:
- 一 环境准备
下载对应的Mongodb之后,安装到对应路径,接下来我以mgb为例。
- 二 安装服务
1安装Mongodb服务
打开bin目录下的mongod.cfg文件:
可以看到已经给我们配置好了数据库存放路径和日志存放路径,还有网络设置,若需修改,直接在此处进行修改即可。
安装:
mongod --config "E:mgbinmongod.cfg" -install
不出现任何提示,即代表安装成功,
2启动Mongodb
net start MongDB (默认的服务名为MongoDB)
- 1
第一次安装服务启动时,会容易报错,
错误: 启动MongoBD发生系统错误1058 无法启动服务
解决办法:删除当前的服务
sc delete 服务名
,并重新以管理员身份启动命令提示符
cd 到bin目录下,重新安装服务mongod --config "E:mgbinmongod.cfg" -install
即可,
输入net start MongDB
即可成功
3服务启动之后,输入mongo,即可自动与MongoDB数据库进行连接,出现对应的版本信息就代表连接成功
另外,因为MongoDB shell是MongoDB自带的交互式javaScript shell,用来对MongoDB进行操作和管理,当我们进入到MongoDB后,会默认连接到test文档数据库,(输入db命令查看当前操作的文档 ,会出现test这个数据库。
MongoDB安装过程中出现service MongoDB failed to start,verify that you have sufficient privileges to start
按照上述步骤安装了vc_redist.x64.msi,安装过程还是无法启动,按下图操作即可正常启动mongodb服务:
MongoDB4.0.0配置用户名密码认证登录
1、创建管理员账户并赋予权限
打开cmd,输入mongo,进入mongodb的命令页面
-
-
> use admin #进入admin数据库
-
switched to db admin
-
> db.createUser( {user: "root",pwd: "root",roles: [ { role: "root", db: "admin" } ]})
-
下面这种也行,就是复制进去难看.
-
db.createUser(
-
{
-
user:"root",
-
pwd:"z10113269",
-
roles:[{role:"root",db:"admin"}]
-
}
-
)
-
用户添加成功会出现:成功的字样和添加的用户信息。
user:”用户名“,
pwd:"密码”,
roles:指定用户的角色,可以用一个空数组给新用户设定空角色;在roles字段,可以指定内置角色和用户定义的角色。
注意一点,帐号是跟着库走的,所以在指定库里授权,必须也在指定库里验证(auth)。
具体用户权限:
read:允许用户读取指定数据库
readWrite:允许用户读写指定数据库
dbAdmin:允许用户在指定数据库中执行管理函数,如索引创建、删除,查看统计或访问system.profile
userAdmin:允许用户向system.users集合写入,可以找指定数据库里创建、删除和管理用户
clusterAdmin:只在admin数据库中可用,赋予用户所有分片和复制集相关函数的管理权限。
readAnyDatabase:只在admin数据库中可用,赋予用户所有数据库的读权限
readWriteAnyDatabase:只在admin数据库中可用,赋予用户所有数据库的读写权限
userAdminAnyDatabase:只在admin数据库中可用,赋予用户所有数据库的userAdmin权限
dbAdminAnyDatabase:只在admin数据库中可用,赋予用户所有数据库的dbAdmin权限。
root:只在admin数据库中可用。超级账号,超级权限。
2、修改配置文档mongod.cfg(位置:安装目录in 下)
首先,将bind_ip改为0.0.0.0 ,binIP关乎到访问连接的限制。
-
#bindIp: 192.168.0.136 #如果修改成本机Ip,那除了本机外的机器都可以连接
-
#bindIp: 0.0.0.0 #改成0,那么大家都可以访问(共赢)
-
#bindIp: 127.0.0.1 #改成127,那就只能自己练了(独吞)
然后找到 #security:去掉#号,改成下面这样,开启安全认证。
-
security:
-
authorization: enabled #注意缩进,参照其他的值来改,若是缩进不对可能导致后面服务不能重启
冒号后有个空格.
如图:
C:javaeeMongoDBServer4.4in>mongod --config "C:javaeeMongoDBServer4.4inmongod.cfg" -install
win0用mongd重载配置文件后才能重启服务.
3、重启服务
重启MongoDB Server服务,启用认证!
4、验证登录
进入cmd,输入mongo,进入MongoDB shell.
直接输入命令会报错,因为没有认证登陆
5、接下来,进入账户所属数据库,再认证即可。
-
> use admin
-
switched to db admin
-
> db.auth("用户名","密码")
-
1
-
> show dbs
-
admin 0.000GB
-
config 0.000GB
-
local 0.000GB
#这样登陆成功了
6、以 Studio 3T 为例,在图形化界面的设置方式。