zoukankan      html  css  js  c++  java
  • 玩 MongoDB 吗?RHEL 7.6 上搭建 Mongo 4.4.0(二进制搭建)

    很温馨的提示

    我给你说,作为搞技术的,这都2020了,你要是到现在还不会 Linux,赶紧,网上有很多教程,或者买书自己多敲多练。

    登主页下资源

    https://www.mongodb.com/
    

    路径: Software - Community Server - 照图选 - Download

    准备RHEL 7.6

    不知道咋安装?翻翻 0级 搭建类,先把 Linux 玩熟练。
    还想玩游戏?玩你个大头鬼哦~整天就知道撸啊撸、就知道吃鸡,来来来,告诉我,水平如何?个人战绩如何?装备花费有超过20万吗?战队排名第几位?打过几次职业联赛?拿过什么奖项?到现在了连 Linux 都还不会,还玩游戏,玩你个鬼啊整天,你要么就打出个名堂来,你要么就滚粗好好学习,不是喜欢打游戏吗?把 C/C++ 好好学学,进入游戏公司踏平他们!一天到晚啥都不会,就知道玩游戏。请问我可以鄙视你吗?

    环境配置

    主机名及IP

    echo "192.168.26.128 henry" >> /etc/hosts
    

    安装依赖包

    不知道咋配置yum?翻翻 1级 搭建类。

    yum install -y cyrus-sasl
    yum install -y cyrus-sasl-plain
    yum install -y cyrus-sasl-gssapi
    yum install -y krb5-libs
    yum install -y lm_sensors-libs
    yum install -y net-snmp-agent-libs
    yum install -y net-snmp
    yum install -y openssl
    yum install -y openssl-devel
    yum install -y rpm-libs
    yum install -y tcp_wrappers-libs
    

    关闭防火墙和SELinux

    systemctl stop firewalld.service 
    systemctl disable firewalld.service
    
    vim /etc/selinux/config
    SELINUX=disabled
    

    修改内核参数

    echo "vm.zone_reclaim_mode=0" >> /etc/sysctl.conf
    sysctl -p
    

    创建用户与目录及相应授权

    mkdir /mongodb/data
    mkdir /mongodb/logs
    mkdir /mongodb/apps
    groupadd -g 12345 mongodb
    useradd -u 12345 -g mongodb mongodb
    id mongodb
    passwd mongodb
    
    chown -R mongodb:mongodb /mongodb/
    chmod -R 775 /mongodb/
    

    资源限制

    vim /etc/security/limits.conf
    # 添加
    mongodb hard nofile 25600
    mongodb soft nofile 25600
    mongodb hard nproc 25600
    mongodb soft nproc 25600
    

    切换 MongoDB 用户

    解压软件

    [root@henry ~]# su - mongodb 
    [mongodb@henry ~]$ cd /mongodb/apps/
    [mongodb@henry apps]$ ls
    mongodb-linux-x86_64-rhel70-4.4.0.tgz
    [mongodb@henry apps]$ tar zxvf mongodb-linux-x86_64-rhel70-4.4.0.tgz
    [mongodb@henry apps]$ ll
    total 69560
    drwxrwxr-x. 3 mongodb mongodb      100 Aug 13 08:11 mongodb-linux-x86_64-rhel70-4.4.0
    -rw-r--r--. 1 mongodb mongodb 71226106 Aug 13 07:40 mongodb-linux-x86_64-rhel70-4.4.0.tgz
    

    创建软连接

    # 你可以直接创建目录进行复制
    [mongodb@henry apps]$ ln -s /mongodb/apps/mongodb-linux-x86_64-rhel70-4.4.0 /mongodb/apps/mongodb
    [mongodb@henry apps]$ ll
    total 69560
    lrwxrwxrwx. 1 mongodb mongodb       47 Aug 13 08:13 mongodb -> /mongodb/apps/mongodb-linux-x86_64-rhel70-4.4.0
    drwxrwxr-x. 3 mongodb mongodb      100 Aug 13 08:11 mongodb-linux-x86_64-rhel70-4.4.0
    -rw-r--r--. 1 mongodb mongodb 71226106 Aug 13 07:40 mongodb-linux-x86_64-rhel70-4.4.0.tgz
    

    为 mongodb 添加配置文件

    [mongodb@henry ~]$ vim /mongodb/apps/mongodb/bin/mongodb.conf
    [mongodb@henry ~]$ cat /mongodb/apps/mongodb/bin/mongodb.conf 
    dbpath=/mongodb/data
    logpath=/mongodb/logs/mongodb.log
    port=27017
    fork=true
    auth=true
    journal=true
    maxConns=500
    logappend=true
    directoryperdb=true
    bind_ip=127.0.0.1,192.168.26.128
    

    为 mongodb 用户添加环境变量

    [mongodb@henry ~]$ vim ~/.bash_profile
    # 参考更改
    PATH=$PATH:$HOME/.local/bin:/mongodb/apps/mongodb/bin:$HOME/bin
    

    启动 MongoDB

    [mongodb@henry ~]$ mongod -f /mongodb/apps/mongodb/bin/mongodb.conf 
    about to fork child process, waiting until server is ready for connections.
    forked process: 71668
    child process started successfully, parent exiting
    

    连接 MongoDB

    # 任意选择
    mogo
    mongo -port 27017
    mongo 192.168.26.128:27017
    mongo 127.0.0.1:27017
    

    创建管理员用户

    > db.createUser({user: "admin",pwd: "mongo123",roles: ["root"]});
    Successfully added user: { "user" : "admin", "roles" : [ "root" ] }
    

    验证管理员用户

    # 有点像oracle要登陆,验证账号和密码一样,不然无法操作
    > use admin
    switched to db admin
    > db.auth("admin","mongo123");
    > show dbs
    admin   0.000GB
    config  0.000GB
    local   0.000GB
    

    创建数据库 HENRY

    > use henry
    switched to db henry
    

    注意:使用 use 切换数据库,如果没有,直接创建;当使用 show dbs 命令查询数据库时,不会立刻显示当前 henry 数据库,必须在里面创建一个集合后才能查看。

    创建集合(表)

    # 使用当前 henry 数据库(db),创建一个集合/表(memeda),插入(insert)一个文档(行记录)
    > db.memeda.insert({"name": "henry"})
    WriteResult({ "nInserted" : 1 })
    
    # 查询集合
    > show collections;
    abc
    ergouzi
    memeda
    > show tables;
    abc
    ergouzi
    memeda
    
    # 查询集合中的文档
    > db.memeda.find();
    { "_id" : ObjectId("5f3531e0ebb4844a9a8cb11f"), "name" : "henry" }
    
    # 或者单独创建集合
    > db.createCollection("emp");
    { "ok" : 1 }
    
    # 查询集合
    > show collections;
    abc
    emp
    ergouzi
    memeda
    > show tables;
    abc
    emp
    ergouzi
    memeda
    
    # 在集合 EMP 中插入一个文档并查询
    > db.emp.insert({"empno":"7788","ename":"scott","deptno":"20"});
    WriteResult({ "nInserted" : 1 })
    > db.emp.find();
    { "_id" : ObjectId("5f353ab1ebb4844a9a8cb121"), "empno" : "7788", "ename" : "scott", "deptno" : "20" }
    

    初次见面,你先感受下。更多操作请键入 help 查看帮助文档或参考官方在线文档。

  • 相关阅读:
    Oracle SQL语句大全—查看表空间
    Class to disable copy and assign constructor
    在moss上自己总结了点小经验。。高手可以飘过 转贴
    在MOSS中直接嵌入ASP.NET Page zt
    Project Web Access 2007自定义FORM验证登录实现 zt
    SharePoint Portal Server 2003 中的单一登录 zt
    vs2008 开发 MOSS 顺序工作流
    VS2008开发MOSS工作流几个需要注意的地方
    向MOSS页面中添加服务器端代码的另外一种方式 zt
    状态机工作流的 SpecialPermissions
  • 原文地址:https://www.cnblogs.com/askscuti/p/13495224.html
Copyright © 2011-2022 走看看