Windows下安装配置MongoDB

Windows下安装配置MongoDB

一,介绍

MongoDB 是由C++语言编写的,是一个基于分布式文件存储的开源数据库系统。在高负载的状况下,添加更多的节点,能够保证服务器性能。javascript

MongoDB 将数据存储为一个文档,数据结构由键值(key=>value)对组成。MongoDB 文档相似于 JSON 对象。字段值能够包含其余文档,数组及文档数组。java

二,安装配置

当前数据库版本:Mongodb 4.0.5mongodb

第一步:下载MongoDB数据库

第二步:安装MongoDB数组

下载后双击该文件,按操做提示安装便可。可是安装过程当中,你能够经过点击 "Custom(自定义)" 按钮来设置你的安装目录。安全

第三步:建立数据库文件的存放位置服务器

在MongoDB下建立data,在data下再建立db:D:\MongoDB\data\db数据结构

由于启动mongodb服务以前须要必须建立数据库文件的存放文件夹,不然命令不会自动建立,并且不能启动成功。app

第四步:启动MongoDB服务分布式

进入D:\MongoDB\bin目录(注意:先输入d:进入d盘,而后输入cd D:\MongoDB\bin),而后输入以下的命令启动mongodb服务:mongod --dbpath D:\MongoDB\data\db,若是出现如下界面,表示启动成功

27017是mongodb的默认端口号

参数            描述
--bind_ip         绑定服务IP,若绑定127.0.0.1,则只能本机访问,不指定默认本地全部IP
--logpath         定MongoDB日志文件,注意是指定文件不是目录
--logappend         使用追加的方式写日志
--dbpath          指定数据库路径
--port            指定服务端口号,默认端口27017
--serviceName          指定服务名称
--serviceDisplayName   指定服务名称,有多个mongodb服务时执行。
--install            指定做为一个Windows服务安装。

第五步:配置MongoDB验证

MongoDB 默认直接链接,无须身份验证,若是当前机器能够公网访问,且不注意Mongodb 端口(默认 27017)的开放状态,那么Mongodb就会产生安全风险,被利用此配置漏洞,入侵数据库。

配置MongoDB验证,用于链接操做数据库,提升安全性

1,管理员帐户

建立管理员帐户

1 use admin
2 
3 db.createUser(
4   {
5     user: "adminUser",
6     pwd: "adminPass",
7     roles: [ { role: "userAdminAnyDatabase", db: "admin" } ]
8   }
9 )

若是出现以下界面,则表示建立成功

验证用户

1 use admin
2 
3 db.auth("adminUser", "adminPass")

若是出现以下界面,则表示验证成功

2,普通帐户

建立普通帐户

1 use jackson_YingQi
2 
3 db.createUser(
4   {
5     user: "myAdminUser",
6     pwd: "myAdminPass",
7     roles: [ { role: "readWrite", db: "jackson_YingQi" }]
8   }
9 )

 若是出现以下界面,则表示建立成功

验证用户

1 use jackson_YingQi
2 
3 db.auth("myAdminUser", "myAdminPass")

若是返回1,表示验证成功

三,安装配置可视化工具

   可视化工具还方便操做与查看

第一步:下载Robo 3T

第二步:安装Robo 3T

一直点击下一步便可,可自定义安装路径

第三步:配置建立链接

1,打开Robo 3T ,点击“create”建立一个到mongoDB的链接。 

2,给建立的链接新建一个名称,并填上数据库的ip和端口。默认是localhost

3,链接成功以后,插入数据,编辑以后再保存就能够。 

 查看刚才插入的数据

四,经常使用命令

4.1,内置角色

  1. Read:容许用户读取指定数据库
  2. readWrite:容许用户读写指定数据库
  3. dbAdmin:容许用户在指定数据库中执行管理函数,如索引建立、删除,查看统计或访问system.profile
  4. userAdmin:容许用户向system.users集合写入,能够找指定数据库里建立、删除和管理用户
  5. clusterAdmin:只在admin数据库中可用,赋予用户全部分片和复制集相关函数的管理权限。
  6. readAnyDatabase:只在admin数据库中可用,赋予用户全部数据库的读权限
  7. readWriteAnyDatabase:只在admin数据库中可用,赋予用户全部数据库的读写权限
  8. userAdminAnyDatabase:只在admin数据库中可用,赋予用户全部数据库的userAdmin权限
  9. dbAdminAnyDatabase:只在admin数据库中可用,赋予用户全部数据库的dbAdmin权限。
  10. root:只在admin数据库中可用。超级帐号,超级权限

4.2,命令

  1. show dbs 显示所有的数据库
  2. use dbName(数据库名)进入数据库(若没有则是建立数据库)
  3. db 输出当前在哪一个库
  4. show tables 查看表

4.3,MongoDB数据类型

$type操做符是基于BSON类型来检索集合中匹配的数据类型,并返回结果。

Type Number Alias Notes
Double 1 “double”  
String 2 “string”  
Object 3 “object”  
Array 4 “array”  
Binary data 5 “binData”  
Undefined 6 “undefined” Deprecated.
ObjectId 7 “objectId”  
Boolean 8 “bool”  
Date 9 “date”  
Null 10 “null”  
Regular Expression 11 “regex”  
DBPointer 12 “dbPointer” Deprecated.
JavaScript 13 “javascript”  
Symbol 14 “symbol” Deprecated.
JavaScript (with scope) 15 “javascriptWithScope”  
32-bit integer 16 “int”  
Timestamp 17 “timestamp”  
64-bit integer 18 “long”  
Decimal128 19 “decimal” New in version 3.4.
Min key -1 “minKey”  
Max key 127 “maxKey”
相关文章
相关标签/搜索