cenos mongodb安装

作者: 清浅第五空间 | 来源:发表于2018-06-21 11:30 被阅读6次

    cd /soft

    centos6.5 wget https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-rhel62-3.2.9.tgz  (有时候很慢直接下载上传吧)

    centos7 wget  https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-rhel70-3.2.9.tgz

    tar zxvf mongodb-linux-x86_64-rhel62-3.2.9.tgz

    mv mongodb-linux-x86_64-rhel62-3.2.9 mongodb

    rm -r  mongodb-linux-x86_64-rhel62-3.2.9.tgz

    cd mongodb/

    mkdir db

    mkdir logs

    mkdir conf

    cd conf

    编辑配置文件:

    vi mongodb.conf

    输入以下内容:

    dbpath=/soft/mongodb/db

    logpath=/soft/mongodb/logs/mongodb.log

    pidfilepath=/soft/mongodb/mongodb.pid

    bind_ip=0.0.0.0

    port=27017

    fork=true

    shardsvr=true

    auth=false

    启动:

    /soft/mongodb/bin/mongod -f /soft/mongodb/conf/mongodb.conf

    root用户

    设置开机自动启动mongodb

    vi /etc/rc.d/rc.local

    /soft/mongodb/bin/mongod -f /soft/mongodb/conf/mongodb.conf

    进入mongodb的shell模式:

    /soft/mongodb/bin/mongo

    创建数据库

    use test-youren;

    db.test.insert({'id':1});

    use dev-youren;

    db.test.insert({'id':1});

    show dbs;

    添加账号密码,指定访问数据库youren

    use admin;

    db.createUser(  {  user: "root",  pwd: "gzyr123",roles: [ { role: "userAdminAnyDatabase", db: "admin" } ]  });

    db.createUser(  {  user: "admin",  pwd: "admin",  roles: [ { role: "root", db: "admin" } ]  });

    use test-youren;

    db.createUser(  {  user: "test-youren",  pwd: "test-youren", roles: [ { role: "readWrite", db: "test-youren" } ]  });

    db.createUser(  {  user: "youren_r",  pwd: "rhnn9iBPzj8PwzAD",  roles: [ { role: "read", db: "test-youren"} ]  });

    use dev-youren;

    db.createUser(  {  user: "dev-youren",  pwd: "dev-youren",  roles: [ { role: "readWrite", db: "dev-youren" } ]  });

    db.createUser(  {  user: "youren_r",  pwd: "rhnn9iBPzj8PwzAD",  roles: [ { role: "read", db: "dev-youren" } ]  });

    验证权限

    use admin;

    db.auth("root", "123") ;

    db.auth("admin", "admin") ;

    use test-youren;

    db.auth("test-youren", "test-youren") ;

    db.auth("youren_r", "rhnn9iBPzj8PwzAD") ;

    use dev-youren;

    db.auth("dev-youren", "dev-youren") ;

    db.auth("youren_r", "rhnn9iBPzj8PwzAD") ;

    use admin ;

    db.auth("admin", "admin") ;

    db.shutdownServer() ;

    vi mongodb.conf

    修改  auth=true

    重新启动  /soft/mongodb/bin/mongod -f /soft/mongodb/conf/mongodb.conf

    进入mongodb的shell模式:

    /soft/mongodb/bin/mongo

    重新验证权限

    关闭方法

    方法一

    ps  -ef |grep mongodb 找到你要查找的进程号

    kill -9  pid    杀掉

    方法二

    也可以进入到mongo数据库里面进行操作

    ./mongo

    use  admin

    db.shutdownServer();

    增加管理员权限:

    userAdminAnyDatabase 这个角色拥有分配角色和用户的权限,但没有查写的缺陷

    root 这是超级管理员

    readWrite 有读写权限

    read 有读权限

    1、添加一个用户 复制代码代码如下添加用户、设置密码、是否只读 :

    db.addUser("name"); 

    db.addUser("userName", "pwd123", true);  

    2、数据库认证、安全模式 : 

    db.auth("userName", "123123");  

    3、显示当前所有用户 复制代码代码如下:

     show users;

    4、删除用户 : 

    db.dropUser("userName");

    Read:允许用户读取指定数据库

    readWrite:允许用户读写指定数据库

    dbAdmin:允许用户在指定数据库中执行管理函数,如索引创建、删除,查看统计或访问system.profile

    userAdmin:允许用户向system.users集合写入,可以找指定数据库里创建、删除和管理用户

    clusterAdmin:只在admin数据库中可用,赋予用户所有分片和复制集相关函数的管理权限。

    readAnyDatabase:只在admin数据库中可用,赋予用户所有数据库的读权限

    readWriteAnyDatabase:只在admin数据库中可用,赋予用户所有数据库的读写权限

    userAdminAnyDatabase:只在admin数据库中可用,赋予用户所有数据库的userAdmin权限

    dbAdminAnyDatabase:只在admin数据库中可用,赋予用户所有数据库的dbAdmin权限。

    root:只在admin数据库中可用。超级账号,超级权限

    Built-In Roles(内置角色):

        1. 数据库用户角色:read、readWrite;

        2. 数据库管理角色:dbAdmin、dbOwner、userAdmin;

        3. 集群管理角色:clusterAdmin、clusterManager、clusterMonitor、hostManager;

        4. 备份恢复角色:backup、restore;

        5. 所有数据库角色:readAnyDatabase、readWriteAnyDatabase、userAdminAnyDatabase、dbAdminAnyDatabase

        6. 超级用户角色:root 

        // 这里还有几个角色间接或直接提供了系统超级用户的访问(dbOwner 、userAdmin、userAdminAnyDatabase)

        7. 内部角色:__system

    相关文章

      网友评论

        本文标题:cenos mongodb安装

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