MongoDB安装

来源:互联网 发布:80端口被攻击 编辑:程序博客网 时间:2024/06/06 00:19

  MongoDB是一款nosql数据库,是nosql数据库中最贴近关系型数据库的一种。nosql数据库具有高性能、易拓展和高容错等特性,适用于对海量数据集进行查询,在多领域得到应用。

MongoDB windows环境安装

  关于mogodb安装配置的文章网上有很多,本文主要对自己的学习和使用过程进行记录。
  首先在官网下载zip安装包。MongoDB Atlas是MonggoDB官方提供的云化版本,提供线上数据库管理和租赁服务,我们下载community Server社区版本(主要面向开发者,免费),另外官网提供enterprise Server版本(主要面向使用者,收费)。本文使用monggodb 3.4 支持ssl连接的64位版本进行安装。
1.解压zip到指定文件夹,本机为“D:\MongoDB\Server”。
2.创建“D:\MongoDB\data\db”路径作为mongodb数据库数据存放路径。
3.打开cmd,cd到“D:\MongoDB\Server\bin”路径。运行“mongod –dbpath D:\mongodb\data\db”指定数据存放路径。
4.浏览器打开 http://localhost:27017/ 看到“It looks like you are trying to access MongoDB over HTTP on the native driver port.”说明路径指定成功,MongoDB默认监听端口是27017
  下面配置MongoDB服务:
1.创建日志存储路径“D:\MongoDB\data\log”。新建文件mongodb.log。
2.在“D:\MongoDB\Server”下创建mongo.config文件。指定dbpath和logpath。logappend=true设置日志以追加方式产生。
3**.用管理员身份打开cmd命令行**,进入MongoDB安装路径下的bin目录,输入:
mongod –config D:\MongoDB\Server\mongo.config –install –serviceName “MongoDB”
4.在cmd中输入services.msc可以查看到注册的MongoDB服务。

安装MongoDB gui

  市面上有很多mongodb的gui工具,本文使用Robo 3T,安装过程很简单,到官网下载最新版本,然后点击安装,一路next。本文安装在D:\MongoDB\GUI\Robo 3T 1.1.1目录下。

mongodb添加管理员

  打开gui的shell。
  创建第一个用户,该用户需要有用户管理权限
  这里设置其角色为root,shell命令:
  use admin
  db.createUser({user:”admin”,pwd:”password”,roles:[“root”]})

  在mongodb的配置文件mongo.config中开启登录认证 auth=true,默认为false。然后重启windows中的MongoDB服务。

注:为指定数据库添加用户和权限
db.createUser({ user: “root”,pwd: “root”,customData:{name:”root”},roles:[{ role: “readWrite”,db: “目标数据库” }]})

新增的用户在system.users中,可以在admin的system.users数据表中查看到。
第一个用户添加完成后,用db.auth(“admin”, “password”)开启登录认证。
  重新打开gui工具,进行连接时会出现failed to execute “listdatabases” command,说明没有登录授权,需要重新edit connection,添加authentication方能进入。

以下参考博客:
1、创建用户并授权

语法:
db.createUser({user:”UserName”,pwd:”Password”,roles:[{role:”RoleName”,db:”Target_DBName”}]})

首先选择在哪个库创建用户,如test:use test;
创建用户有3项需要提供:用户名,密码,角色列表

例如我要在test下面创建用testuser,密码为testpwd,角色列表包括test库的readWrite角色和userAdmin角色:

db.createUser({user:”testuser”,pwd:”testpwd”,roles:[{role:”readWrite”,db:”test”},{role:”userAdmin”,db:”test”}]})

2、修改密码

首先进入目标库:use test
db.changeUserPassword(‘testuser’,’testPWD’);

3、添加角色

首先进入目标库:use test
db.grantRolesToUser( “testuser”, [ { role: “read”,db:”admin”} ] )

4、回收角色权限

首先进入目标库:use test
db.revokeRolesFromUser(“testuser”,[ { role: “read”,db:”admin”} ] )

5、删除用户

首先进入目标库:use test
db.dropUser(“testuser”)

原创粉丝点击