美文网首页
Linux环境下mongodb的安装和配置

Linux环境下mongodb的安装和配置

作者: lokamir | 来源:发表于2020-02-12 15:31 被阅读0次

    下载完安装包,并解压 tgz(以下演示的是 64 位 Linux上的安装) 。

    curl -O https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-3.0.6.tgz    # 下载
    tar -zxvf mongodb-linux-x86_64-3.0.6.tgz                                   # 解压
    
    mv  mongodb-linux-x86_64-3.0.6/ /usr/local/mongodb                         # 将解压包拷贝到指定目录
    

    MongoDB 的可执行文件位于 bin 目录下,所以可以将其添加到 PATH 路径中:

    export PATH=/usr/local/mongodb/bin:$PATH
    

    /usr/local/mongodb 为 MongoDB 的安装路径。

    创建数据库目录

    MongoDB的数据存储在data目录的db目录下,但是这个目录在安装过程不会自动创建,所以需要手动创建data目录,并在data目录中创建db目录。
    以下实例中我将data目录创建于根目录下(/)。
    注意:/data/db 是 MongoDB 默认的启动的数据库路径(--dbpath)。

    mkdir -p /data/db
    

    命令行中运行 MongoDB 服务

    你可以再命令行中执行mongo安装目录中的bin目录执行mongod命令来启动mongdb服务。
    注意:如果你的数据库目录不是/data/db,可以通过 --dbpath 来指定。

    ./mongod
    2015-09-25T16:39:50.549+0800 I JOURNAL  [initandlisten] journal dir=/data/db/journal
    2015-09-25T16:39:50.550+0800 I JOURNAL  [initandlisten] recover : no journal files present, no recovery needed
    2015-09-25T16:39:50.869+0800 I JOURNAL  [initandlisten] preallocateIsFaster=true 3.16
    2015-09-25T16:39:51.206+0800 I JOURNAL  [initandlisten] preallocateIsFaster=true 3.52
    2015-09-25T16:39:52.775+0800 I JOURNAL  [initandlisten] preallocateIsFaster=true 7.7
    

    在/usr/local创建log、conf目录,

    mkdir logs
    touch ./logs/mongodb.log
    mkdir conf
    

    添加配置文件

    vim ./conf/mongodb.conf
    

    配置说明

     #数据目录
    dbpath=/data/db #数据目录
    #日志目录
    logpath=/usr/local/mongodb/logs/mongodb.log
    port=27017 #端口号
    #设置后台运行
    fork=true 
    #日志输出方式
    logappend = true 
    #开启认证
    #auth = true
    

    启动

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

    检查mogodb端口

    netstat -lanp  | grep 27017  
    

    设置开机启动

    echo "/usr/local/mongodb/bin/mongod --dbpath=/usr/local/mongodb/data --logpath=/usr/local/mongodb/bin/logs/mongodb.log --logappend  --auth --port=27017" >> /etc/rc.local
    

    添加到系统服务

     vim /etc/rc.d/init.d/mongod
    

    内容如下

    start() {  
    /usr/local/mongodb/bin/mongod  --config /usr/local/mongodb/conf/mongodb.conf 
    }  
      
    stop() {  
    /usr/local/mongodb/bin/mongod  --config /usr/local/mongodb/conf/mongodb.conf  --shutdown  
    }  
    case "$1" in  
      start)  
     start  
     ;;  
      
    stop)  
     stop  
     ;;  
      
    restart)  
     stop  
     start  
     ;;  
      *)  
     echo  
    $"Usage: $0 {start|stop|restart}"  
     exit 1  
    esac 
    

    修改权限

    chmod +x /etc/rc.d/init.d/mongod 
    

    启动 停止

    service mongod start
    service mongod stop
    

    启动mongodb:

    mongo --port 27017
    

    创建管理员账户并赋予权限(用于管理所有数据库):

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

    user:”用户名“,
    pwd:"密码”,
    roles:[{role:"角色名“, db:"角色所属数据库”}, {role:"角色名2“, db:"角色所属数据库2”},.....]

    新增的用户在 db.system.users 中

    db.getCollectionNames()

    [ "system.indexes", "system.users", "system.version" ]

    验证用户是否创建成功:

    db.auth("root","1234")
    1
    > exit
    

    杀掉进程,重启mongoDB服务:

    ps -ef | grep mongod
    kill -9  pid
    

    带认证模式开启Mongod:

    mongod --auth --config /usr/local/mongodb/conf/mongodb.conf
    

    进入账户所属数据库,再认证

    use admin
    >switched to db admin
    db.auth("用户名","密码")
    >1 
    show dbs
    >admin 0.000GB
    >config 0.000GB
    >local 0.000GB
    

    这样登陆成功了

    相关文章

      网友评论

          本文标题:Linux环境下mongodb的安装和配置

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