• CentOS下安装MongoDB


    CentOS下安装MongoDB

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

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

    1 下载安装

    官网提供windows、Linux、OSX系统环境下的安装包,这里主要是记录一下在Linux下的安装。首先到官网下载最新的安装包。这里下载的是4.0.1版本的。

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

    4.0.1版本适合CentOS系统的下载地址:https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-4.0.1.tgz

    1.1 在CentOS中,我们使用wget下载安装包。

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

     

    1.2 解压并修改相关配置

    1.2.1 解压

    tar -zxvf mongodb-linux-x86_64-4.0.1.tgz
     

     

    1.2.2 重命名为mongodb

    mv mongodb-linux-x86_64-4.0.1 mongodb
     

     

    1.2.3 创建文件:db用来存放数据库、logs用来存放日志

    cd mongodb
    mkdir db logs
     

     

    1.2.4 添加配置文件

    cd bin
    vi mongodb.conf
     

     

     

    内容如下:

    dbpath=/root/apps/mongodb/db
    logpath=/root/apps/mongodb/logs/mongodb.log
    port=27017
    fork=true
    nohttpinterface=true
     

     

     

    参数解释:

    dbpath: 数据库存放位置
    logpath:日志存放位置
    port:监听端口
    fork:是否后台运行
    nohttpinterface:是否关闭http接口
     

     

     

    1.2.5 绑定ip和配置文件

    ./mongod --bind_ip 192.168.162.128 -f mongodb.conf
     

     

    发现报错:

    原因:https://stackoverflow.com/questions/48020445/error-parsing-ini-config-file-unrecognised-option-nohttpinterface

    我们把配置文件中的nohttpinterface=true去掉

    报错:

    解决方法:

    删除db目录下的mongod.lock文件

    然后以修复的方式启动

    bin/mongod -f /root/apps/mongodb/bin/mongodb.conf --repair
     

     

    1.2.6 开机启动

    vi /etc/rc.d/rc.local
     

     

    添加如下内容:

    /root/apps/mongodb/bin/mongod --bind_ip 192.168.162.128 -f /root/apps/mongodb/bin/mongodb.conf
     

     

    1.2.7 自动安装脚本

    #! /bin/bash
    download_url=https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-4.0.1.tgz
    file_name=${download_url##*/}
    file_dir=${file_name%.tgz*}
    now_path=$(pwd)
    dbpath=dbpath=${now_path}/${file_dir}/db
    logpath=logpath=${now_path}/${file_dir}/logs/mongodb.log
    fork=fork=true
    port=port=27017
    ipaddr=$(ip addr | awk '/^[0-9]+: / {}; /inet.*global/ {print gensub(/(.*)/(.*)/, "\1", "g", $2)}')
    # download
    wget $download_url
    
    # untgz
    tar -zxvf $file_name
    
    # cd 
    cd $file_dir
    
    # mkdir
    mkdir db logs
    
    echo $dbpath >> bin/mongodb.conf
    echo $logpath >> bin/mongodb.conf
    echo $fork >> bin/mongodb.conf
    echo $port >> bin/mongodb.conf
    
    #bind
    binpath=${now_path}/${file_dir}/bin
    ${binpath}/mongod --bind_ip ${ipaddr} -f ${binpath}/mongodb.conf
    
    #开机启动
    echo ${binpath}/mongod --bind_ip ${ipaddr} -f ${binpath}/mongodb.conf >> /etc/rc.d/rc.local
     

    2 连接使用

    进入数据库

    ./mongo 192.168.162.128
     

     

    查看数据列表

    show dbs;
     

     

    查看版本

    db.version()
     

     

    客户端下载:https://www.robomongo.org/download

  • 相关阅读:
    CentOS7-samba文件共享服务
    centos7-vsftpd文件服务器
    linux用户和权限管理
    linux程序安装及包管理
    linux文件查找-find命令
    linux文本编辑器-VIM基本使用方法
    linux文本处理工具及正则表达式
    linux目录结构及文件管理
    linux基本命令及使用方法
    巴什博奕----取完者负的分析
  • 原文地址:https://www.cnblogs.com/brady-wang/p/12799984.html
Copyright © 2020-2023  润新知