美文网首页Mongodb - 个人专题
Mongodb4.2 安装及配置 2020-08-14

Mongodb4.2 安装及配置 2020-08-14

作者: 宇宙小神特别萌 | 来源:发表于2020-08-14 10:52 被阅读0次

    [toc]

    Mongodb4.2 安装及配置

    Windows MongoDB4.2.0安装配置教程

    1. 下载(地址如下)

    2. 安装MongoDB及创建文件夹和文件

    3. 启动MongoDB

    4. 设置管理员账号(重新打开一个cmd窗口)

    5. 通过配置文件启动MongoDB服务

    1、下载(地址如下)

    https://fastdl.mongodb.org/win32/mongodb-win32-x86_64-2012plus-4.2.0-signed.msi
    
    

    安装时注意:取消勾选 「Install MonogoDB Compass」,后点击「Next」。MonogoDB Compass是连接mongodb库的客户端。

    2、安装MongoDB及创建文件夹和文件

    • 直接双击软件运行安装

    • 安装过程中,你可以通过点击 “Custom(自定义)” 按钮来设置你的安装目录。(我是安装在D:\MongoDB目录下的)

    • 在D:\MongoDB目录下创建data、log,data目录下创建db文件夹,log目录下创建mongod.log文件(有则无需创建)

    3、启动MongoDB

    进入D:\MongoDB\bin目录下,在地址框输入cmd命令回车,然后输入如下命令启动MongoDB

    mongod.exe --dbpath D:\MongoDB\data\db
    

    4、设置管理员账号(重新打开一个cmd窗口)

    进入mongo

    mongo --port 27017
    

    创建管理员用户

    # 进入数据库
    use admin
    
    # 创建一个用户名root,密码123456的管理员用户
    db.createUser(
      {
        user: "root",
        pwd: "123456",
        roles: [ { role: "userAdminAnyDatabase", db: "admin" } ]
      }
    )
    

    退出Mongo

    # 退出mongo
    exit
    
    # 使用用户名密码登录
    mongo --port 27017 -u root -p 123456 --authenticationDatabase admin
    

    5、通过配置文件启动MongoDB服务

    进入D:\MongoDB\bin 目录下,打开mongod.cfg文件,添加
    security:
    authorization: enabled ,保存

    # mongod.conf
    
    # for documentation of all options, see:
    #   http://docs.mongodb.org/manual/reference/configuration-options/
    
    # Where and how to store data.
    storage:
      dbPath: D:\MongoDB\data
      journal:
        enabled: true
    #  engine:
    #  mmapv1:
    #  wiredTiger:
    
    # where to write logging data.
    systemLog:
      destination: file
      logAppend: true
      path:  D:\MongoDB\log\mongod.log
    
    # network interfaces
    net:
      port: 27017
    #  bindIp: 127.0.0.1
      bindIp: 0.0.0.0
    # security:是开启认证,必须通过用户名和密码才能登陆系统
    security:
      authorization: enabled
    
    #processManagement:
    
    #security:
    
    #operationProfiling:
    
    #replication:
    
    #sharding:
    
    ## Enterprise-Only Options:
    
    #auditLog:
    
    #snmp:
    #mp:
    
    

    以管理员启动CMD,进入到D:\MongoDB\bin目录下

    .\mongod.exe --config D:\MongoDB\bin\mongod.cfg --install --serviceName "MongoDB"
    
    #如果报错:
    Unrecognized option: mp
    try 'mongod.exe --help' for more information
    #打开bin\mongod.cfg,注释最后一行mp:
    #mp:
    
    

    启动MongoDB服务

    net start MongoDB
    net stop MongoDB #关闭Mongo服务
    

    验证权限的两种方式:

    • 连接实例的时候就验证
    • 连接实例之后,使用数据库的时候验证

    尝试登录Mongo: 连接实例的时候就验证

    mongo --port 27017 -u root -p 123456 --authenticationDatabase admin
    

    如果尝试登录再次失败:

    # 1、启动mongodb
    # 启动方式:进入D:\MongoDB\bin目录下,在地址框输入cmd命令回车,然后输入如下命令启动MongoDB
    mongod.exe --dbpath D:\MongoDB\data\db
    
    # 进入mongo,重新打开一个cmd窗口
    mongo --port 27017
    
    # 切换至admin超级管理员
    use admin
    
    # 创建一个用户名root,密码123456的管理员用户
    db.createUser(
      {
        user: "root",
        pwd: "123456",
        roles: [ { role: "userAdminAnyDatabase", db: "admin" } ]
      }
    )
    
    #授权
    db.auth("root", "123456" )
    
    #退出mongo
    exit
    
    #尝试登录Mongo
    mongo --port 27017 -u root -p 123456 --authenticationDatabase admin
    
    

    尝试登录Mongo: 连接实例之后,使用数据库的时候验证

    # 进入mongo,重新打开一个cmd窗口
    mongo --port 27017
    
    #验证:返回 1 验证成功
    use admin
    db.auth("root", "123456" )
    
    

    6、mongodb 创建新的用户:

    # 1、启动mongodb
    # 启动方式:进入D:\MongoDB\bin目录下,在地址框输入cmd命令回车,然后输入如下命令启动MongoDB
    mongod.exe --dbpath D:\MongoDB\data\db
    
    # 进入mongo,重新打开一个cmd窗口
    mongo --port 27017
    
    #验证:返回 1 验证成功
    use admin
    db.auth("root", "123456" )
    #验证成功后就可以给其他数据库创建用户授权
    #创建或切换库 omsdb,此处创建验证库
    use omsdb
    #创建用户,授权和绑定库,验证库为上面创建的的omsdb
    db.createUser(
      {
        user: "oms",
        pwd: "Passw0rd",
        roles: [ { role: "dbOwner", db: "omsdb" } ]
      }
    )
    
    #创建成功后断开实例连接
    exit
    
    #测试新创建的用户 登录验证
    mongo --port 27017 -u oms -p Passw0rd --authenticationDatabase omsdb
    
    #创建/切换库至dukedb
    use omsdb
    
    #查看当前库
    db
    
    # 插入一行数据,保证工具能够连接mongo
    db.foo.insert( { x: 1, y: 1 } )
    
    

    项目应用:

    # 用 超级用户登录 Robo 连接mongo库
    # 执行命令-切换至admin库
    use admin
    db.auth("admin", "pass")
    # 创建用户
    db.createUser(
      {
        user: "test",
        pwd: "pass",
        roles: [ { role: "dbOwner", db: "test" } ]
      }
    )
    
    # 使用新创建的用户登录
    用户密码:test/pass 权限认证库:admin
    
    

    Mongo查看操作:

    # 进入mongo,重新打开一个cmd窗口
    mongo --port 27017
    
    #权限验证
    use admin
    db.auth('root','123456')
    
    #查看全局所有账户
    db.system.users.find().pretty()
    
    #查看当前库下所有账户
    show users
    # 删除当前库的某个用户
    db.dropUser("username")
    
    #查看所有库
    show dbs
    # 删除当前库 查看:show dbs,db  
    db
    db.dropDatabase()   # 需要用户有删除库的权限
    
    

    7、注意:Robo 3T-1.3才能支持MongoDB 4.X

    Robo 3T 连接报错:

    #报错信息
    Error: Network error while attempting to run command 'saslStart' on host '12
    
    #解决方式:
    Robo 3T-1.3才能支持MongoDB 4.X
    
    #安装Robo 3T-1.3
    https://www.robomongo.org/download
    

    8、数据库备份还原

    # 备份库
    # 不开启权限验证备份库
    mongodump -h 127.0.0.1:27017 -u dbname -p pass --archive=C:\DatabaseBackup\mongo\dbname_20200511.gz --gzip --db dbname
    # 开启权限验证备份库
    mongodump -h 127.0.0.1:27017 --authenticationDatabase admin -u dbname -p dist2019 --archive=C:\DatabaseBackup\mongo\dbname_20200511.gz --gzip --db dbname
    
    # 还原库
    # 新库与旧库名称一致情况
    mongorestore -h 127.0.0.1:27017 --authenticationDatabase admin -u username -p pass --archive=C:\DatabaseBackup\mongo\dbname_20200511.gz --gzip --db dbname
    # 新库与旧库名不一致情况
    # 关闭mongo认证权限导入备份数据库方式  旧库:dbname  新库:new_dbname
    mongorestore -h 127.0.0.1:27017 --username=new_username --password=pass --gzip --archive=C:\DatabaseBackup\mongo\dbname_20200511.gz --nsFrom "dbname.*" --nsTo "new_dbname.*"  --nsInclude "*"
    # 开启mongo认证权限导入备份数据库方式
    mongorestore -h 127.0.0.1:27017 --username=new_username --password=pass --authenticationDatabase=admin --gzip --archive=C:\DatabaseBackup\mongo\dbname_20200511.gz --nsFrom "dbname.*" --nsTo "new_dbname.*"  --nsInclude "*"
        
    

    相关文章

      网友评论

        本文标题:Mongodb4.2 安装及配置 2020-08-14

        本文链接:https://www.haomeiwen.com/subject/fccgdktx.html