mongodb3.2.8centos安装及配置

    xiaoxiao2026-04-05  9

    注意:使用自带web管理界面,需要 在配置文件中httpinterface=true,并创建一个用户

    1、下载 

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

    2、解压 

    tar zxvf mongodb-linux-x86_64-rhel70-3.2.8.tgz  mv mongodb-linux-x86_64-rhel70-3.2.8 /usr/local/  mv mongodb-linux-x86_64-rhel70-3.2.8 mongodb  cd mongodb/

    mkdir db  mkdir logs  cd bin/ 

    3、编辑配置文件: 

    注意此处 压缩包中是没有mongodb.conf的,创建一个,启动时候指定配置文件就可以了。

    vim mongodb.conf  输入以下内容:  dbpath=/usr/local/mongodb/db  logpath=/usr/local/mongodb/logs/mongodb.log  bind_ip=0.0.0.0  port=27017  fork=true 

    #启用页面监控

    httpinterface=true #nohttpinterface=true

    4、创建新的账号: 

    groupadd mongodb  useradd mongodb -g mongodb  cd ../../  chown -R mongodb:mongodb mongodb

    5、启动: 

    /usr/local/mongodb/bin/mongod -f /usr/local/mongodb/bin/mongodb.conf

    6、设置开机自动启动mongodb 

    vi /etc/rc.d/rc.local  /usr/local/mongodb/bin/mongod –config /usr/local/mongodb/bin/mongodb.conf

    进入mongodb的shell模式:  /usr/local/mongodb/bin/mongo  查看数据库列表:  show dbs  查看当前db版本:  db.version();

    7、增加管理员权限:

    userAdminAnyDatabase 这个角色拥有分配角色和用户的权限,但没有查写的缺陷  root 这是超级管理员  readWrite 有读写权限  read 有读权限

    进入shell模式:  /usr/local/mongodb/bin/mongo

    use admin //切换到admin数据库

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

    db.createUser(  {  user: “mongoRoot”,  pwd: “testMongoDB2016”,  roles:[{role:”userAdminAnyDatabase”, db:”admin”}]  }  );  验证一下,在哪里注册用户的要去哪个db里认证:  db.auth(“mongoRoot”, “testMongoDB2016”)  此后可以用这个mongoRoot账号去创建某一数据库管理账号:  db.createUser({user:”hhq163”,pwd:”test123456”,roles:[{“role”:”readWrite”,”db”:”admin”}]})

    但发现此时增加的账号不能在客户端登录,原因是mongodb版本错了:  先退出 mongod 服务

    use admin  db.auth(“root”, “testMongoDB2016”)  db.shutdownServer()  再在无认证情况下打开 mongod  use admin  db.dropUser(“hhq163”)  db.system.version.update({ “_id”:”authSchema”},{$set:{“currentVersion”:3}})  db.createUser({user:”hhq163”,pwd:”test123456”,roles:[{“role”:”readWrite”,”db”:”admin”}]})  再以认证的形式启动mongodb

    如果需要创建某一个新DB的账号:  需要在shell下执行:  use TestDB  db.createUser({user:”hhq163”,pwd:”test123456”,roles:[{“role”:”readWrite”,”db”:”TestDB”}]})

    vim /usr/local/mongodb/bin/mongodb.conf  在文件末尾增加以下这一行:  auth=true

    8、关闭数据库服务器: 

    use admin  db.shutdownServer()

    如果开户安全认证,则要先认证:  use admin  db.auth(“root”, “testMongoDB2016”)  db.shutdownServer()

    最新回复(0)