分享

MongoDB Windows下的安装与部署 (二)

 liang1234_ 2019-06-17

一、InstallingMongoDBon Windows
  1. MongoDB在大多数平台上运行。在MongoDB中可以找到所有可用的包的列表  www./downloads您的环境的正确版本将取决于您的服务器的操作系统,以及处理器。MongoDB支持32位和64位架构,但是建议使用64位的架构生产环境。
  2. 在Windows上安装MongoDB是一个简单的问题,可以下载msi文件来选择所选的构建版本Windows和运行安装程序。安装程序将引导您完成MongoDB的安装。在向导之后,您将到达选择设置类型的屏幕。
  3. 有两种设置类型
        在其中,您可以自定义安装。在本例中,选择设置类型为Custom。在选择Custom时需要指定安装目录,所以要指定目录C: PracticalMongoDB。
        注意,MongoDB可以从用户选择的任何文件夹中运行,因为它是自包含的,并且具有不依赖于系统。
        如果选择了完整的安装类型,则选择默认的文件夹C:\Program Files\MongoDB。单击Next将带您到安装屏幕的准备就绪。点击Install。这将启动安装,并显示屏幕上的进展。一旦安装完成,向导将带您进入完成屏幕。单击Finish完成设置。在成功完成上述步骤之后,您将拥有一个目录调用C:在bin文件夹中所有相关应用程序的实用程序。这就是它的全部。


二、RunningMongoDB
  1. 服务的安装
       存储文件需要一个数据文件夹。默认情况下是C:Windows中的数据db和/data/dbLINUX系统。这些数据目录不是由MongoDB创建的,所以在开始MongoDB数据目录之前需要手动创建,并且您需要确保设置了适当的权限(例如MongoDB有读取、写入和目录创建权限)。如果在创建文件夹之前启动MongoDB,它将抛出一个错误消息,并且将无法运行。
         手动创建data,与log文件的存储位置。
         ps.  data位置: D:\JavaEnvironment\MongoDB\bin\data
                log位置:  D:\JavaEnvironment\MongoDB\log 并且新建一个 mongo.log文件。
        
MongoDB服务安装命令       sc create MongoDB binpath="G:\SoftInstall\MongoDB\bin\mongod.exe --dbpath D:\JavaEnvironment\MongoDB\bin\data --logpathD:\JavaEnvironment\MongoDB\log\mongo.log  --logappend --service"

另外教大家一个小技巧 TAB键的用法,例如在DOC框中切盘符时索引,还是很方便的
例如 我要到 D:\JavaEnvironment\MongoDB\bin 下。 切换到D盘时, cd ja 这时按TAB键,会自动索引到 D:\JavaEnvironment 下,当然知道的例外。

  1. 启动服务
关于MongoDB服务的相关命令     
    

三、Verifying the Installation
        相关的可执行文件将出现在子目录下。下面的内容可以在以下内容中进行检查bin目录,以检查安装步骤的成功:
            ·Mongod:数据库的核心服务
           ·Mongo:MongoDB数据库的shell
           ·Mongos:自动分片过程
           ·Mongoexport:导出工具类
           ·Mongoimport:导入工具类
       另外,下载安装MongoDB的图形化工具  https:///


四、MongoDBShell
          mongo shell是MongoDB的标准分发版的一部分。shell提供了一个完整的数据库MongoDB的接口,让您可以使用JavaScript存储在MongoDB中存储的数据环境,它可以完全访问语言和所有的标准函数。一旦数据库服务启动,您可以启动mongo shell并开始使用MongoDB。这可以在Linux中使用Shell,也可以在Windows中使用命令提示符(以管理员身份运行)。

        如果在启动服务时没有指定参数,它将连接到名为test的默认数据库在本地主机实例。数据库将在连接到该数据库时自动创建。MongoDB提供了以下特性如果试图访问不存在的一个数据库,就会自动创建一个数据库。

五、Securing the Deployment
    1.使用身份验证和授权
          这意味着用户只有在使用凭证登录时才能够访问数据库它可以访问数据库。这将禁用对数据库的匿名访问。用户后通过身份验证,可以使用授权来确保用户只有所需的访问权限需要完成手头的任务。身份验证和授权都存在于每个数据库级别。用户存在于a的上下文中单一的逻辑数据库。用户的信息保存在一个名为system的集合中。用户,存在于管理数据库。
    这个集合维护了对用户进行身份验证所需的凭证它存储用户id、密码和所创建的数据库,以及所需的特权授权用户。MongoDB使用基于角色的方法来进行授权(阅读、readWrite的角色,readAnyDatabase,等等)。
    如果需要,用户管理员可以创建自定义角色。系统内的特权文档。用户集合用于存储每个用户角色。相同的文档维护认证用户的凭证。系统中的文档示例。
用户收集如下:

          这个文档告诉我们用户shak是与数据库实践数据库相关联的,它已经读过了在实践数据库数据库中的角色和在MyDB数据库中的readWrite角色。请注意,用户名和关联数据库惟一地标识MongoDB中的用户,所以如果您有两个相同的用户名称,但是它们与不同的数据库相关联,然后它们被认为是两个唯一的用户。因此,一个用户可以在不同的数据库上拥有不同的授权级别。
    可用的角色
             ·read:为指定的所有集合提供了只读访问数据库。.
              ·readWrite:指定的任何集合提供了读写访问权限数据库。
             ·dbAdmin:用户能够在其中执行管理操作指定的数据库,例如索引管理,使用ensure索引,下拉索引,reIndex、indexStats、重命名集合、创建集合等。
             ·userAdmin:用户能够在该操作上执行readWrite操作系统。用户收集指定的数据库。它还支持修改权限现有用户或创建新用户。这实际上是超级用户的角色指定的数据库。
             ·clusterAdmin:该角色允许用户授予对管理操作的访问权这将改变或显示整个系统的信息。clusterAdmin是只适用于管理数据库。
             ·readAnyDatabase:用户可以从MongoDB的任何数据库中读取数据环境。
             ·readWriteAnyDatabase: 这个角色类似于readWrite,但它是针对所有数据库的。
             ·userAdminAnyDatabase:这个角色类似于userAdmin角色,但它不适用所有数据库。
             ·dbAdminAnyDatabase:这个角色与dbAdmin相同,但它适用于所有的数据库。
             · 从2.6版本开始,用户管理员还可以创建用户定义的角色通过在集合级别和命令中提供访问权限来实现最小特权的策略的水平。用户定义的角色作用于创建和创建的数据库。通过数据库和角色名称的组合惟一地标识出来。所有的用户定义的角色存储在系统中。角色集合。

         
  1. 开启权限认证
            身份验证在缺省情况下是禁用的,因此使用-auth来启用身份验证。虽然开始mongod,使用mongod——身份验证。在启用身份验证之前,您需要至少有一个管理员用户。正如你看到以上,管理员用户是负责创建和管理其他用户的用户。


  1. 创建超级用户

  1. 创建用户和授权

  1. 控制对网络的访问


    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多