• CentOS7.4 安装mongodb


    温馨提示:我的环境是腾讯云自带的CentOS7.4 x64 镜像,本地环境是win10 x64 专业版,ssh工具是用的win10 自带的cmd, 远程工具版本是Robo 3T 1.2.1 。
    如果环境不一致,可能会出现无法预知的错误。

    1、去官网找到安装包地址,复制下来。
    官网地址:https://www.mongodb.com/download-center?jmp=nav#community
    我使用的安装包地址:https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-4.0.0.tgz

    2、使用SSH登录服务器,找一个文件夹存放安装包,我这里使用的是 /usr

    cd /usr
    wget https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-4.0.0.tgz

    第一步是定位到/usr文件夹,第二步是下载安装包。


     
     

    如图所示进度到100%时,就是下载完成了。

    3、解压缩安装包,并重命名文件夹。

    tar zxvf mongodb-linux-x86_64-4.0.0.tgz
    mv mongodb-linux-x86_64-4.0.0 mongodb
    

      

    第一步是解压缩,第二步是重命名,如图所示。


     
    解压缩
     
    重命名

    4、配置环境变量

    vim /etc/profile

    在 export PATH USER LOGNAME MAIL HOSTNAME HISTSIZE HISTCONTROL 一行的上面添加如下内容:

    Set Mongodb
    export PATH=/usr/mongodb/bin:$PATH

    保存后通过下面的命令使环境变量生效:

    cd ~
    source /etc/profile
     
    设置环境变量

    5、创建数据库目录

    cd /usr/mongodb
    touch mongodb.conf
    mkdir db
    mkdir log
    cd log
    touch mongodb.log

    6、修改mongodb配置文件。

    vim /usr/mongodb/mongodb.conf

    添加以下内容

    port=27017 #端口
    dbpath= /usr/mongodb/db #数据库存文件存放目录
    logpath= /usr/mongodb/log/mongodb.log #日志文件存放路径
    logappend=true #使用追加的方式写日志
    fork=true #以守护进程的方式运行,创建服务器进程
    maxConns=100 #最大同时连接数
    noauth=true #不启用验证
    journal=true #每次写入会记录一条操作日志(通过journal可以重新构造出写入的数据)。
    #即使宕机,启动时wiredtiger会先将数据恢复到最近一次的checkpoint点,然后重放后续的journal日志来恢复。
    storageEngine=wiredTiger  #存储引擎有mmapv1、wiretiger、mongorocks
    bind_ip = 0.0.0.0  #这样就可外部访问了,例如从win10中去连虚拟机中的MongoDB
    

      

    7、设置文件夹权限

    cd /usr/mongodb
    chmod 777 db
    chmod 777 log

    8、启动mongodb

    cd ~
    mongod --config /usr/mongodb/mongodb.conf
    网友指正:最新版本mongodb已经将--config 修改为 -f (本人尚未尝试)

    9、远程连接mongodb
    官网下载robo 3t https://robomongo.org/download
    安装完后配置。

     
    点击creat
     
    请原封不动填写
     
    切换到ssh选项卡

     
    按图设置

    点save保存


     
    点连接

     
    输入服务器的登录密码

     
    连接成功

    10、如何关闭数据库
    查看pid

    ps aux |grep mongodb
     
    pid
    sudo kill 5314

    即可关闭数据库

    2018年7月30日补充:

    授权登录
    在日常工作中我们不可能把数据库设置为免认证登录并暴露在公网下,所以我们需要为数据库添加用户名和密码,具体操作如下:(文章来自ChasenKaos,转发请注明。谢谢 原文:https://www.jianshu.com/p/994bc7b19b26

    1、修改前文提到的conf文件,命令如下:

    cd /usr/mongodb
    vim mongodb.conf

    打开后如图:


     
    image.png

    我们把noauth那一行,前面加上#,注释掉。
    再在最后一行添加 auth = true
    完整代码如下:

    port=27017 #端口
    dbpath= /usr/mongodb/db #数据库存文件存放目录
    logpath= /usr/mongodb/log/mongodb.log #日志文件存放路径
    logappend=true #使用追加的方式写日志
    fork=true #以守护进程的方式运行,创建服务器进程
    maxConns=100 #最大同时连接数
    #noauth = true #不启用验证
    journal=true #每次写入会记录一条操作日志(通过journal可以重新构造出写入的数据)。
    #即使宕机,启动时wiredtiger会先将数据恢复到最近一次的checkpoint点,然后重放后续的journal日志来恢复。
    storageEngine=wiredTiger  #存储引擎有mmapv1、wiretiger、mongorocks
    bind_ip = 0.0.0.0  #这样就可外部访问了,例如从win10中去连虚拟机中的MongoDB
    auth = true #用户认证
    

      

    保存退出。

    2、关闭数据库,前文已经提到了方法,我这里只做操作,如图:


     
    image.png

    3、启动数据库,请参照前文方法,如图:


     
    image.png

    插曲:在添加用户名之前应该先执行./mongo命令先打开mongodb数据库
    来自网友@OldX_cea8

    4、依次执行下列命令 添加用户名

    //使用admin数据库
    use admin
    
    //给admin数据库添加管理员用户名和密码,用户名和密码请自行设置
    db.createUser({user:"admin",pwd:"123456",roles:["root"]})
    
    //验证是否成功,返回1则代表成功
    db.auth("admin", "123456")
    
    //切换到要设置的数据库,以test为例
    use test
    
    //为test创建用户,用户名和密码请自行设置。
    db.createUser({user: "test", pwd: "123456", roles: [{ role: "dbOwner", db: "test" }]})

    执行完后,ctrl + c结束shell,并通过关闭,打开进行重启数据库。

    5、通过robo 3t连接。
    connection标签页


     
    connection标签页

    authentication标签页


     
    authentication标签页

    ssh标签页


     
    ssh标签页

    点击save后,连接即可,如果出现报错,请核对自己输入的信息是否有误。



    作者:派大C
    链接:https://www.jianshu.com/p/994bc7b19b26

  • 相关阅读:
    string类的方法
    引用
    面向对象之多态性(基类引用可以指向子类)
    SQL Server、Oracle数据库排序空值null问题解决办法(转)
    远程计算机已结束连接解决方法
    GUID自增ID表关联比较
    第四种行转列
    SQL简体转繁体互换(常用汉字词组)
    CSS基本布局16例
    Dojo Javascript 编程规范
  • 原文地址:https://www.cnblogs.com/jasonLiu2018/p/13088971.html
Copyright © 2020-2023  润新知