zoukankan      html  css  js  c++  java
  • Centos7 安装MongoDB的详细过程

    一、简介

    MongoDB 是一个基于分布式文件存储的数据库。由 C++ 语言编写。旨在为 WEB 应用提供可扩展的高性能数据存储解决方案。

    MongoDB 是一个介于关系数据库和非关系数据库之间的产品,是非关系数据库当中功能最丰富,最像关系数据库的

    系统:CentOS Linux release 7.2.1511 (Core)

    版本:MongoDB 3.2.10

    官网: https://www.mongodb.com

    二、安装

    这里我们在官网下载源码进行安装. 下载地址: https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-rhel70-3.2.10.tgz

    下载源码, 使用wget下载

    cd /mnt/soft
    wget https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-rhel70-3.2.10.tgz
    tar -zxvf mongodb-linux-x86_64-rhel70-3.2.10.tgz -C /usr/local
    cd /usr/local
    mv mongodb-linux-x86_64-rhel70-3.2.10 mongodb

    配置环境变量

    修改/etc/profile, 添加如下

    vim /etc/profile

        export MONGODB_HOME=/usr/local/mongodb

    export PATH=$MONGODB_HOME/bin:$PATH

    source /etc/profile


    创建数据目录: mkdir /usr/local/mongodb/data

       创建存放日志目录:    mkdir     /mnt/logs/mongodb/

    添加配置文件

    新建mongod.conf配置文件, 通过这个配置文件进行启动.

    cat /usr/local/mongodb/mongod.conf

    bind_ip = 0.0.0.0
    port = 50570      #启用指定端口号
    logpath = /mnt/logs/mongodb/mongod.log  #日志文件路径
    dbpath = /usr/local/mongodb/data        #数据库路径(数据文件)
    #auth = true         #指定为是否需要验证权限登录(用户名和密码),先关闭,创建好用户再启动
    master = true        #指定为主机器

    常用文件参数说明:

    mongodb的参数说明:
    --dbpath 数据库路径(数据文件)
    
--logpath 日志文件路径
    
--master 指定为主机器
    
--slave 指定为从机器
    
--source 指定主机器的IP地址
    
--pologSize 指定日志文件大小不超过64M.因为resync是非常操作量大且耗时,最好通过设置一个足够大的oplogSize来避免resync(默认的 oplog大小是空闲磁盘大小的5%)。
    
--logappend 日志文件末尾添加
    
--port 启用端口号
    
--fork 在后台运行
    
--only 指定只复制哪一个数据库
    
--slavedelay 指从复制检测的时间间隔
    
--auth 是否需要验证权限登录(用户名和密码)
    
    注:mongodb配置文件里面的参数很多,定制特定的需求,请参考官方文档

    我这里是使用supervisord管理进程的

    文件:

    [root@sosoapi mongodb]# cat /etc/supervisord.conf.d/mongod.conf 
    [program:mongodb]
    command=/usr/local/mongodb/bin/mongod -f /usr/local/mongodb/mongod.conf ; the program (relative uses PATH, can take args)
    process_name=%(program_name)s ; process_name expr (default %(program_name)s)
    numprocs=1 ; number of processes copies to start (def 1)
    directory=/usr/local/mongodb/bin ; directory to cwd to before exec (def no cwd)
    ;umask=022 ; umask for process (default None)
    ;priority=999 ; the relative start priority (default 999)
    autostart=true ; start at supervisord start (default: true)
    startsecs=1 ; # of secs prog must stay up to be running (def. 1)
    startretries=3 ; max # of serial start failures when starting (default 3)
    ;autorestart=unexpected ; when to restart if exited after running (def: unexpected)
    ;exitcodes=0,2 ; 'expected' exit codes used with autorestart (default 0,2)
    ;stopsignal=QUIT ; signal used to kill process (default TERM)
    ;stopwaitsecs=10 ; max num secs to wait b4 SIGKILL (default 10)
    ;stopasgroup=false ; send stop signal to the UNIX process group (default false)
    ;killasgroup=false ; SIGKILL the UNIX process group (def false)
    ;user=chrism ; setuid to this UNIX account to run the program
    redirect_stderr=true ; redirect proc stderr to stdout (default false)
    stdout_logfile=/mnt/logs/supervisor/mongodb_stdout_log ; stdout log path, NONE for none; default AUTO
    stdout_logfile_maxbytes=1MB ; max # logfile bytes b4 rotation (default 50MB)
    stdout_logfile_backups=10 ; # of stdout logfile backups (default 10)
    stdout_capture_maxbytes=1MB ; number of bytes in 'capturemode' (default 0)
    ;stdout_events_enabled=false ; emit events on stdout writes (default false)
    stderr_logfile=/mnt/logs/supervisor/mongodb_stderr_log ; stderr log path, NONE for none; default AUTO
    stderr_logfile_maxbytes=1MB ; max # logfile bytes b4 rotation (default 50MB)
    stderr_logfile_backups=10 ; # of stderr logfile backups (default 10)
    stderr_capture_maxbytes=1MB ; number of bytes in 'capturemode' (default 0)
    ;stderr_events_enabled=false ; emit events on stderr writes (default false)
    ;environment=A="1",B="2" ; process environment additions (def no adds)
    ;serverurl=AUTO ; override serverurl computation (childutils)



    cd /usr/local/mongodb/bin
    ./mongo
    
    创建数据库
    use test
    switched to db test
    
    创建成功
    
    
    创建用户,设置权限
    db.createUser(
        {
            user: "test",
            pwd: "test",
            roles: [ { role: "readWrite", db: "test" } ]
        }
    )
    详细权限配置参考网址: [MongoDB 3.0 用户创建](http://www.cnblogs.com/zhoujinyi/p/4610050.html)
  • 相关阅读:
    【Android进阶】关于PagerAdapter的使用方法的总结
    不容易系列之(4)——考新郎
    阿牛的EOF牛肉串
    Number Sequence
    盐水的故事
    Digital Roots
    密码 hdu
    不容易系列之(3)—— LELE的RPG难题
    冒泡排序----java实现
    不容易系列之一
  • 原文地址:https://www.cnblogs.com/tianfen/p/8940805.html
Copyright © 2011-2022 走看看