zoukankan      html  css  js  c++  java
  • 装mongodb在centos7上

    1、下载安装包

    curl -O https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-3.2.12.tgz

    2、解压

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

    3、移动到指定位置

    mv  mongodb-linux-x86_64-3.2.12/ /usr/local/mongodb

    4、在/usr/local/mongodb下创建文件夹

    mkdir -p /data/db
    mkdir  /logs

    5、在/usr/local/mongodb/bin下新建配置

    vi mongodb.conf

    dbpath = /usr/local/mongodb/data/db #数据文件存放目录

    logpath = /usr/local/mongodb/logs/mongodb.log #日志文件存放目录
    port = 27017  #端口
    fork = true  #以守护程序的方式启用,即在后台运行
    nohttpinterface = true
    auth=true

    bind_ip=0.0.0.0

    6、环境变量配置

    vi /etc/profile 

    export MONGODB_HOME=/usr/local/mongodb

    export PATH=$PATH:$MONGODB_HOME/bin

    保存后,重启系统配置

    source /etc/profile

    7、启动

    在/usr/local/mongodb/bin下

    mongod -f mongodb.conf 或 ./mongod -f mongodb.conf

    8、关闭

    mongod -f ./mongodb.conf --shutdown  或./mongod -f ./mongodb.conf --shutdown

    9、开启端口

    firewall-cmd --zone=public --add-port=27017/tcp --permanent
    查看端口
    firewall-cmd --permanent --query-port=27017/tcp
    重启防火墙

    firewall-cmd --reload

    10、创建用户

     创建用户管理员:
       use admin
       db.createUser({user:"root",pwd:"root123456",roles:["userAdminAnyDatabase"]})
       db.auth('root','root123456')
     以用户管理员身份登录,并切换数据库,创建数据库用户:
       切换到test数据库
       use test
       创建用户名、密码、角色
       db.createUser({user:"username",pwd:"@user123456*",roles:[{role:"readWrite",db:"securitydata"}]})
       设置mongodb配置中的auth为true(/etc/mongod.conf):
       security:
         authorization: enabled
       验证mongodb数据库权限。
       db.auth('user','@user123456*')
    -----------------------------------------------------------------------------------------------------------------

    4,测试启动

    进入bin目录,输入命令

    ./mongod -f ./mongodb.conf

    这时候会显示数据库启动成功

    在服务器本地测试一下,使用命令

    1.  
      ./mongo 127.0.0.1
    2.  
      MongoDB shell version: 2.6.4
    3.  
      connecting to: 127.0.0.1/test
    这标识数据库启动成功

    在局域网内的其它机器使用工具连接测试一下。

    有的小伙伴可能会发现无法连接,通常这都是防火墙的端口没有打开造成的

    使用命令打开端口

    1.  
      开启端口
    2.  
      firewall-cmd --zone=public --add-port=27017/tcp --permanent
    3.  
      查看端口
    4.  
      firewall-cmd --permanent --query-port=27017/tcp
    5.  
       
    6.  
       
    7.  
      重启防火墙
    8.  
      firewall-cmd --reload
    注意事项:

    a,要加上  --permanent 才能保证重启后也能打开

    b,这里最好重启一下防火墙,有时候开启端口并不能立即生效,什么原因我也不清楚

    好了,现在局域网内其它机器也可以连接到数据库了。

    5,注册到系统开机启动

    centos 7的开机启动跟之前版本的centos有很大不同。现在用 systemctl命令代替了之前的chkconfig 和 service 命令

    注册到开机启动的方法如下:

    在系统服务目录下新建mongodb的启动服务,并给与754的权限

    1.  
      cd /lib/systemd/system
    2.  
      vi mongodb.service
    chmod 754 mongodb.service

    内容如下

    1.  
      [Unit]
    2.  
       
    3.  
      Description=mongodb
    4.  
      After=network.target remote-fs.target nss-lookup.target
    5.  
       
    6.  
      [Service]
    7.  
      Type=forking
    8.  
      ExecStart=/usr/appdata/mongodb/bin/mongod -f /usr/appdata/mongodb/bin/mongodb.conf
    9.  
      ExecReload=/bin/kill -s HUP $MAINPID
    10.  
      ExecStop=/usr/appdata/mongodb/bin/mongod --shutdown -f /usr/appdata/mongodb/bin/mongodb.conf
    11.  
      PrivateTmp=true
    12.  
       
    13.  
      [Install]
    14.  
      WantedBy=multi-user.target

    路径必须要写绝对路径
    1.  
      启动
    2.  
      systemctl start mongodb.service
    3.  
      关闭
    4.  
      systemctl stop mongodb.service
    5.  
      注册到开机启动
    6.  
      systemctl enable mongodb.service
    
    
    

    6,重启机器验证

    reboot 

  • 相关阅读:
    BigDecimal工具类处理精度计算
    Redis的简单使用和介绍
    数据库优化知识总结
    js弹出QQ对话框在线交谈
    火焰灯menu修改之后,可以实现数遍点击小方块停留在当前页面
    js作用域的一个小例子
    js中this的四种调用模式
    jquery火焰等效果导航菜单
    appserver配置虚拟主机
    一个类似百度文库选中弹出个小框的效果
  • 原文地址:https://www.cnblogs.com/chenxiaozhi/p/9622927.html
Copyright © 2011-2022 走看看