zoukankan      html  css  js  c++  java
  • mongodb系统管理

    CentOS Linux环境为准

    1.要尝试使用MongoDB首先必须要在命令行运行mongod服务
    a. cd MONGO_HOME/bin
    b. ./mongod --dbpath /data/mongodb/db/  --logpath /data/mongodb/logs/mongolog  --logappend --fork

    参数说明
    --dbpath            #指定db文件存放的目录
    --port              #指定mongod服务使用的端口
    --fork              #设置mongo服务为后台运行
    --logpath           #指定log文件的目录和文件名
    --logappend         #设置每次log添加在文件最后
    --rest              #关闭rest api功能
    --nohttpinterface   #关闭web管理功能
    --auth              #指定mongo使用身份验证机制
    --bindip            #用逗号分隔ip地址,用来指定
    --f                 #将所有前面介绍的参数都可以存放到一个配置文件中,然后用这个参数调用配置文件来启动mongod服务

    2.关闭MongoDB有几种方法
    a. db.shutdownServer()  #推荐优先使用
    b. ctrl + c             #在不使用 --fork参数的时候可以使用,可能会造成数据文件损坏
    c. kill / kill -2       #在无法使用 a和b的情况下使用,可能会造成数据文件损坏
    d. kill -9              #不在万不得已的情况下,不要使用这个方法

    3. 查看MongoDB状态
    a.db.runCommand({"serverStatus":1})
    b.MONGO_HOME/bin/mongostat

    4. 添加用户,切换用户 使 --auth参数起效
    db.addUser("root","123")
    db.addUser("read_only","123",true);  #第3个参数表示设置readonly的状态

    db.auth("read_only","123")

    5. 数据库备份
    有4种方法备份数据库
    a. 关闭mongod服务后,复制--dbpath参数指定的数据文件。优点速度快,缺点需要停止mongo服务。
    b. 使用mongodump 导出数据,并用mongorestore 导入数据。优点不需要停止mongo服务,缺点在mongodump操作时用户插入的数据可能无法备份出来。
    c. fsync and lock锁定数据库的让用户只能使用read功能,再使用方法b导出并导入数据。优点不需要停止mongo服务,缺点在数据库lock期间用户无法执行insert操作。
    d. 使用slaveDB并且 使用方法c锁定slaveDB,再使用方法b导出并导入数据。优点不需要停止mongo服务,不会影响用户insert操作(推荐使用此方法)。

    6. 修复数据库
    当数据库文件遭到损坏的时候有3种方法修复数据文件
    a. MONGO_HOME/bin/mongod --repair
    b. use test
       db.repairDatabase()
    c. db.runCommand({"repairDatabase":1});

  • 相关阅读:
    Java面試題(实用性高)
    索引的概述?
    给Eclipse提速的7个技巧
    ETL数据仓库
    实用SQL语句大全
    考证
    PL/SQL 程序
    eclipse
    httpd.conf详解,因为php始终报fileinfo扩展无法加载的错
    dockerfile创建镜像及容器
  • 原文地址:https://www.cnblogs.com/shininguang/p/4860366.html
Copyright © 2011-2022 走看看