目录:

    下载MongoDB

    下载太慢

    安装MongoDB

    服务无法启动     

MongoDB历史版本下载

windows :http://dl.mongodb.org/dl/win32/x86_64

linux       :http://dl.mongodb.org/dl/linux/x86_64

第一步:下载MongoDB

在官网(http://www.mongodb.org/downloads)下载zip或者是msi安装包,来进行安装,其中msi安装包不能选择安装位置。

注意选择自己需要的版本和对应的操作系统,点击下载即可。zip直接解压到指定安装位置即可。

官网下载太慢

对于下载太慢的问题,可以在CMD中ping 域名,来获取ip,再在主机的hosts文件中添加对应的域名以及ip映射,或是直接使用上面的历史版本下载地址,可利用迅雷下载。如下:

    

可以看出,www..mongodb.com官网对应的ip地址是13.35.50.18,那么直接在C:\Windows\System32\drivers\etc路径下的hosts文件中添加如下内容即可:

      

                                 

注意在最后添加即可。原理:避开了DNS域名ip转换?

第二步:创建data文件夹作为数据库文件保存地址

在安装目录下新建data文件夹,作为数据存储的文件,log文件夹作为日志信息的保存地。

我新建了两个文件夹data,log,并没有将log文件夹置于data下。

配置环境变量:在“电脑”-》“属性”-》“高级系统设置”-》“环境变量”-》添加MongoDB_HOME,指定安装位置-》在PATH中添加%MongDB_HOME%/bin。这样就可在cmd中直接使用mongo command了。

可以在bin目录下的mongod.cnf下作配置,没有就新建,内容如下(可以看到,默认绑定ip为127.0.0.1,即本机,那么就是只能在本机登陆,可以自己修改0.0.0.0):

注意在首次使用时,应先在管理员模式下登录CMD,执行mongod.exe --dbpath C:\Users\wolf\NoSQL\MongoDB\Server\4.2\data\db  配置数据文件路径,注意文件夹要先创建,否则会报错,找不到文件夹 not found。执行命令后可发现db下多了很多文件,数据库文件:

 

在本机浏览器登录localhost:27017,端口根据上面的mongodb.cnf配置可以更改。会出现如下信息,表示连接成功:

cmd中使用mongo.exe,已注册即可使用mongo来进入数据库,注意与上面的创建数据库使用的不同,创建/开启数据库是mongod.exe

第三步:注册windows服务

注册mongodb 服务于主机上,使用命令:mongod --config C:\Users\wolf\NoSQL\MongoDB\Server\4.2\bin\mongod.cfg   --install --serviceName "mongodb" ,注意修改自己的配置文件位置,启动服务时net start mongodb,如果不设置dbpath,那么会默认使用配置文件中的dbpath。

第四步:创建用户,开启验证

注意首次登录,会有warning:

WARNING: Access control is not enabled for the database.
Read and write access to data and configuration is unrestricted.

登入后使用以下命令创建管理用户即可:

use admin
db.createUser(
  {
    user: "myUserAdmin",//用户名,自己设置
    pwd: "abc123",//用户密码,自己设置
    roles: [ { role: "userAdminAnyDatabase", db: "admin" } ]//用户身份设置,不需修改
  }
)

设置后,退出mongodb,,关闭数据库服务(net stop mongodb),在开启数据库的命令中添加--auth,来进行用户验证 mongod -auth --dbpath ""指定数据库路径即可。启动对指定数据库开启验证,即可避免该警告,
登录时使用 mongo -u "username" -p password
- -authenticationDatabase "db"来指定开启了验证登陆的数据库,以及使用用户名/密码进行登录。

当无法启动mongo数据库时,可以删除数据库文件中的mongod.lock和storage.bson后,在进行重启。