• 企业400电话
  • 微网小程序
  • AI电话机器人
  • 电商代运营
  • 全 部 栏 目

    企业400电话 网络优化推广 AI电话机器人 呼叫中心 网站建设 商标✡知产 微网小程序 电商运营 彩铃•短信 增值拓展业务
    MongoDB的基本安装与管理命令脚本总结

    安装
    1. Linux安装MongoDB
    1.1 创建数据目录和日志文件:

    mkdir -p /data/node/
    touch /data/mongodb.log
    

    1.2 安装mongodb:

    tar zxf mongodb-linux-x86_64-2.4.9.tgz 
    mv mongodb-linux-x86_64-2.4.9 /opt/mongodb
    echo "export PATH=$PATH:/opt/mongodb/bin" >>/etc/profile
    source /etc/profile
    

    1.3 创建新从节点配置文件:

    cat >> ~/.mongodb.conf EOF
    
    fork = ture
    port = 11000
    dbpath = /data/node
    logpath = /data/mongodb.log
    logappend = true
    EOF
    
    

    1.4 启动MongoDB

    mongod --config ~/.mongodb.conf
    

    2. Windows安装MongoDB
    2.1 下载并解压

    mongodb-win32-x86_64-2008plus-2.4.9.zip
    

    2.2 添加服务

    # mongod -f d:\mongodb\mongodb.cfg --serviceName MongoBD --install
    

    2.3 启动服务

    # net start mongodb 
    

    2.4 删除服务

    # mongod --remove
    

    2.5 MongoDB启动配置文件

    mongodb.cfg -->
    logpath=d:\data\mongo.log 
    dbpath=d:\data
    logappend=true
    auth=true
    #fork=true
    

    管理
    管理MongoDB无论是备份还是带有复制的多节点系统,都有快捷的方式。系统会自动完成各种配置。
    (1)MongoDB是一个普通命令行程序,用mongod调用。
    (2)MongoDB提供了内置的管理接口和监控功能,易与第三方监控包集成。
    (3)MongoDB支持基本的,数据库级别的用户认证,包括只读用户,以及独立的管理员权限。
    (4)多种方式备份MongoDB。

    1.启动停止MongoDB
    1.1 命令行启动
    命令行启动,可以mongod --help查看所有选项。
    (1)--dbpath 默认值为/data/db/。每个Mongod进程都需要独立的数据目录,要有三个mongod实例,必须要有三个独立的数据目录。mongodb启动时,会在数据目录喜爱创建mongod.lock文件,防止其他mongod进程使用该数据目录。
    (2)--port
    指定监听端口,默认为27017,运行多个mongod进程,需要指定不同的端口号。
    (3)--fork
    以守护进程运行mongodb,创建服务器进程。
    (4)--logpath
    指定日志输出路径,而不是输出命令行,它会覆盖已有文件,清除原来的日记记录。如果要保留,需要使用--logappend选项。
    (5)--config
    指定配置文件,加载命令行未指定的各种选项。
    1.2 配置文件
    MongoBD支持从文件获取配置信息。指定配置文件可以用-f或者--config选项。例如:

    # mongod --config ~/.mongodb.conf
    cat > ~/.mongodb.conf EOF
    
    port = 10001
    fork = true
    logpath = /data/mongodb.log
    dbpath = /data/node2
    logappend = true
    EOF
    

    1.3 停止MongoDB
    数据库关闭方法:
    (1)kill -2 SIGTERM或者kill -2 SIGINT,可以稳妥退出,会等到当前运行的操作或者文件预分配,关闭所有打开的连接,将缓存的数据刷新到磁盘,最后停止。
    不能kill -9(SIGKILL),这样会导致数据文件损毁。
    (2)使用管理命令{"shutdown" : 1}

    > use admin
    > db.shutdownServer(); 
    

    2.监控
    2.1 使用管理接口
    启动MongoDB时,会启动一个非常基本的HTTP服务器,该服务器监听的端口比主服务器大1000。呈现的信息可以通过shell查看,也可以通过web页面查看。
    要利用好管理接口,需要用--reset选项开启REST支持。也可以在启动时使用--nohttpinterface关闭管理接口。
    2.2 serverStatus
    serverStatus呈现了MongoDB内部详细信息,比如服务器的版本,运行时间,当前连接数。

    MongoDB shell version: 2.4.9
    connecting to: 127.0.0.1:10001/test
    > db.runCommand({serverStatus : 1})
    

    "globalLock"表示全局写入锁占用了服务器多少时间(微秒)。"mem"包含服务器内存映射了多少数据,服务器进程的虚拟内存和常驻内存占用情况;
    (1)"indexCounters"表示B树在磁盘检索和内存检索的次数;
    (2)"backgroudFlushing"表示后台做了多少次fsync以及用了多少时间;
    (3)"opcounters"包含了每种主要操作的次数。
    2.3 mongostat
    mongostat输出serverStatus提供的重要信息。每秒钟输出新的一行,比之前看到的静态计数实时性更好。分别为insert/s,commands/s,vsize和%locked。
    2.4 第三方插件
    支持Nagios,Munin,Ganglia,Cacti的MongbDB插件。

    3.安全
    MongoDB支持对单个连接的认证。
    3.1 认证的基础知识
    每个MongoDB实例中的数据库都可以有很多用户。开启认证后,只有数据库认证用户才能执行读写操作。
    认证后,管理员可以读写所有的数据库,执行特定的管理命令。
    开启安全认证前,需要有管理员帐号。

    > use admin
    switched to db admin
    > db.addUser("root", "root123");
    {
      "user" : "root",
      "readOnly" : false,
      "pwd" : "81c5bca573e01b632d18a459c6cec418",
      "_id" : ObjectId("530bd17622cceb4323a2b500")
    }
    > use test
    switched to db test
    > db.addUser("test_user", "root123", true);
    {
      "user" : "test_user",
      "readOnly" : true,
      "pwd" : "d436badec207e3821abbaf337fcbdd06",
      "_id" : ObjectId("530bd24322cceb4323a2b501")
    }
    

    在shell中创建只读用户将adduser的第三个参数设为true。调用addUser()必须对数据库有写权限。
    addUser不仅可以增加新用户,还能修改用户口令或只读状态。
    重启服务器,加入--auth选项,开启安全检查。

    > use admin
    switched to db admin
    > db.auth("root", "root123");
    1
    

    3.2 认证的工作原理
    数据库用户帐户以文档形式存储在system.users集合里面。

    > use admin
    switched to db admin
    > db.system.users.find();
    { "_id" : ObjectId("530bd17622cceb4323a2b500"), "user" : "root", "readOnly" : false, "pwd" : "81c5bca573e01b632d18a459c6cec418" }
    

    可以执行

    db.system.users.remove({"user":"root"});

    删除帐号。
    用户认证时,服务器将认证和连接绑定来跟踪认证。
    3.3 其他安装考虑
    除了认证还有许多选项来锁定MongoDB实例。即便使用认证,MongoDB传输协议是不加密的。如需加密,需要使用SHH隧道或类似做客户端和服务器之间的加密。
    MongoDB服务器建议布置在防火墙或内网中,但是如果需要被外部访问,使用--bindip选项,可以指定mongod绑定在本机IP地址。
    可以用--noscripting完全禁止服务器端JavaScript的执行。

    您可能感兴趣的文章:
    • MongoDB常用操作命令大全
    • mongodb与mysql命令详细对比
    • MongoDB常用命令小结
    • Ubuntu系统中安装MongoDB及其启动命令mongod的教程
    • MongoDB入门教程(包含安装、常用命令、相关概念、使用技巧、常见操作等)
    • MongoDB使用mongoexport和mongoimport命令,批量导出和导入JSON数据到同一张表的实例
    • Mongodb启动命令参数中文说明
    • mongodb数据库的6个安全设置命令
    • mongodb 命令行下及php中insert数据详解
    • 详解MongoDB管理命令
    • Ubuntu下安装PHP的mongodb扩展操作命令
    • MongoDB中的主从同步配置和mongod相关启动命令讲解
    • MongoDB使用自带的命令行工具进行备份和恢复的教程
    • MongoDB最基本命令速查笔记
    • MongoDB Shell 命令实例总结【进阶篇】
    • Mongodb 启动命令mongod参数说明(中文翻译)
    • mongodb监控工具mongostat的使用及命令详解
    • MongoDB常用数据库命令大全
    上一篇:MongoDB在不同主机间复制数据库和集合的教程
    下一篇:MongoDB的主从复制及副本集的replSet配置教程
  • 相关文章
  • 

    © 2016-2020 巨人网络通讯 版权所有

    《增值电信业务经营许可证》 苏ICP备15040257号-8

    MongoDB的基本安装与管理命令脚本总结 MongoDB,的,基本,安装,与,