zoukankan      html  css  js  c++  java
  • 【转载】MongoDb环境部署

    第一节: MongoDb环境部署

    MongoDB环境的部署很简单。已经用过的人肯定会和我有相同的想法。首先在官网上下载对应的版本(http://www.mongodb.org/downloads),要分清是自己的是32位还是64位的。
    MongoDb的版本号,偶数的版本是稳定版,奇数是开发版。例如,1.2开头的是稳定版(1.2.0 , 1.2.1 , 1.2.2 等等) ,1.3开头的开发版(1.3.0 , 1.3.1 ,1.3.2 等等)。

    我本机的开发环境是Win7(32bit,双核),公司的开发环境CentOS(Linux的一个版本,64bit,CPU 4颗)

    在Windows下

    1:解压下载的压缩文件。(我的是在E:\nosql\mongodb)
    2:新建一个目录,来存放数据库文件,默认值是/data/db/,(windows 下是:C:\data\db) 作为数据存储目录
    3:cmd 进入到MongoDb解压的目录(我的是在E:\nosql\mongodb),
    >cd E:\nosql\mongodb\bin
    >mongod help 可以查看mongodb的一些参数,下面是我列出的三个常用参数db存储路径,日志存储路径,日志存储方式

    --dbpath arg directory for datafiles
    --logpath arg log file to send write to instead of stdout - has to be
    a file, not directory

    --logappend append to logpath instead of over-writing

    >mongod --dbpath E:\nosql\mongodb\data --logpath=E:\nosql\mongodb\log\mongodb.log --logappend
    会在cmd窗口显示all output going to: E:\nosql\mongodb\log\mongodb.log

    在浏览器输入:http://localhost:27017/,可以看到如下提示:
    You are trying to access MongoDB on the native driver port. For http diagnostic access, add 1000 to the port number

    如此,MongoDB数据库服务已经成功启动了。

    在浏览器输入:http://localhost:28017/,是mongodb系统的一个监控界面。如果你指定了--port端口号,则要用比它大1000的端口号才可以进入mongodb
    的监控界面。

    4:打开另外个cmd窗口,启动一个mongodb的客户端
    >cd E:\nosql\mongodb\bin
    >mongo
    MongoDB shell version: 1.8.3-rc0
    connecting to: test
    >

    >show dbs //查看系统数据库,这些是我本地的dbs
    admin (empty)
    local (empty)
    loginlog 0.125GB
    logintest 0.0625GB
    mymongodb 0.03125GB
    testDb 0.999755859375GB
    >help //查看当前执行角色的帮助信息

    在CentOS下部署Mongodb,我是通过SecureCRT连接到公司的CentOS服务器。它的部署在Windows上的部署操作是一样的。
    先去官方下载对应的版本,然后解压到对应的目录。我的目录是/root/soft,列出解压后的文件

    [root@app-vwsc-01 soft]# ls
    mongodb-linux-x86_64-1.8.2 mongodb-linux-x86_64-1.8.2.tar nagios-nrpe_2.8.1.tar.gz nagios-plugins-1.4.15 nagios-plugins-1.4.15.tar.gz nrpe-2.8.1
    [root@app-vwsc-01 soft]# cd mongodb-linux-x86_64-1.8.2/bin
    [root@app-vwsc-01 bin]# ls
    bsondump mongo mongod mongodump mongoexport mongofiles mongoimport mongorestore mongos mongosniff mongostat
    [root@app-vwsc-01 bin]# ./mongod --dbpath /root/mongodbpro/data/db --logpath /root/mongodbpro/data/log/mongodb.log --logappend //启动mongod的服务器
    all output going to: /root/mongodbpro/data/log/mongodb.log //这个时候Mongodb服务已经启动

    现在启动一个Mongodb的客户端
    [root@app-vwsc-01 bin]# ./mongo
    MongoDB shell version: 1.8.2
    connecting to: test
    > show dbs //查看当前数据库

    到目前,在Win7和CentOS上全部部署完毕,但是需要几点需要注意下:

    1:在我们启动Mongodb的服务后,Win7环境下,Mongodb所有的日志信息都写入mongodb.log文件了。(这个文件是我自定义的)
    ** NOTE: when using MongoDB 32 bit, you are limited to about 2 gigabytes of data
    ** see http://blog.mongodb.org/post/137788967/32-bit-limitations
    ** with --dur, the limit is lower

    Sat Aug 27 16:48:17 [initandlisten] db version v1.8.3-rc0, pdfile version 4.5
    Sat Aug 27 16:48:17 [initandlisten] git version: 81147c1ca4cc10d9a81a0a2afdf364ab1ca8867d
    Sat Aug 27 16:48:17 [initandlisten] build sys info: windows (5, 1, 2600, 2, 'Service Pack 3') BOOST_LIB_VERSION=1_35
    Sat Aug 27 16:48:18 [initandlisten] waiting for connections on port 27017
    Sat Aug 27 16:48:18 [websvr] web admin interface listening on port 28017
    Sat Aug 27 16:49:02 [initandlisten] connection accepted from 127.0.0.1:1398 #1
    Sat Aug 27 17:04:10 [conn1] terminating, shutdown command received
    Sat Aug 27 17:04:10 dbexit: shutdown called
    Sat Aug 27 17:04:10 [conn1] shutdown: going to close listening sockets...
    Sat Aug 27 17:04:10 [conn1] closing listening socket: 188
    Sat Aug 27 17:04:10 [conn1] closing listening socket: 196
    Sat Aug 27 17:04:10 [conn1] shutdown: going to flush diaglog...
    Sat Aug 27 17:04:10 [conn1] shutdown: going to close sockets...
    Sat Aug 27 17:04:10 [conn1] shutdown: waiting for fs preallocator...
    Sat Aug 27 17:04:10 [conn1] shutdown: closing all files...
    Sat Aug 27 17:04:10 closeAllFiles() finished
    Sat Aug 27 17:04:10 [conn1] shutdown: removing fs lock...
    Sat Aug 27 17:04:10 dbexit: really exiting now

    在上面会有一个警告,意思是说,32位下,MongoDB只能处理2GB的数据,因为我用的是32位Mongodb,而且Mongodb是使用内存映射文件存储引擎,要是在64位机器上使用稳定的版本,就不会又这个警告了。

    我们要养成查看日志的习惯,这个对于监控Mongodb很有用。


    2:关闭Mongodb服务,这里先提供这个方法,以后再会说到。
    > use admin //切换到admin
    switched to db admin
    > db.shutdownServer() //执行shutdownServer()
    Sat Aug 27 18:02:57 DBClientCursor::init call() failed
    Sat Aug 27 18:02:57 query failed : admin.$cmd { shutdown: 1.0 } to: 127.0.0.1
    server should be down...
    Sat Aug 27 18:02:57 trying reconnect to 127.0.0.1
    Sat Aug 27 18:02:58 reconnect 127.0.0.1 failed couldn't connect to server 127.0.0.1
    Sat Aug 27 18:02:58 Error: error doing query: unknown shell/collection.js:150
    >exit //然后退出就行

    2:Win7下启动cmd窗口,我建议大家用Windows PowerShell,这个比cmd窗口要好用多了。
    3:我在有些命令后加上 ”//解释“,这个是不属于命令,只作为我的一个解释。
    4:下节我将说下Mongodb的基本操作和C#驱动的选择,哪里写的有问题也希望大家帮提出来。

  • 相关阅读:
    Maven 环境的配置
    zTree的简单例子
    plsql免安装客户端的配置
    HDU 1232 畅通工程
    HDU 5698 瞬间移动
    Codeforces 1015E1 Stars Drawing (Easy Edition)
    Codeforces 784B Santa Claus and Keyboard Check
    Codeforces 500C New Year Book Reading
    NSarray 赋值 拷贝 等问题记录
    UINavigationController 操作记录
  • 原文地址:https://www.cnblogs.com/fx2008/p/2728918.html
Copyright © 2011-2022 走看看