您的位置:首页 > 数据库 > Mongodb

MongoDB安装配置

2015-06-29 15:30 639 查看
简介:

MongoDB是一个高性能,开源,无模式的文档型数据库,是当前NoSql数据库中比较热门的一种。它在许多场景下可用于替代传统的关系型数据库或键/值存储方式。Mongo使用C++开发。Mongo的官方网站地址是:http://www.mongodb.org/,读者可以在此获得更详细的信息。

小插曲:什么是NoSql?

  NoSql,全称是 Not Only Sql,指的是非关系型的数据库。下一代数据库主要解决几个要点:非关系型的、分布式的、开源的、水平可扩展的。原始的目的是为了大规模web应用,这场运动开始于2009年初,通常特性应用如:模式自由、支持简易复制、简单的API、最终的一致性(非ACID)、大容量数据等。NoSQL被我们用得最多的当数key-value存储,当然还有其他的文档型的、列存储、图型数据库、xml数据库等。

一、采用YUM源进行安装:

增加yumr的mongodb下载源 (或者使用阿里云epel源,yum install mongodb mongodb-server -y 好处是相对使用安装包而言不用创建开机启动脚本和自已手动创建配置文件)

1、#vi /etc/yum.repos.d/10gen.repo

[10gen]

name=10gen Repository

baseurl=http://downloads-distro.mongodb.org/repo/redhat/os/x86_64

gpgcheck=0

2、#yum install mongo-10gen mongo-10gen-server -y

3、注意:

也可以用不使用yum命令直接下载安装,可以先把rpm包软件下载来,再用rpm命令安装。

http://downloads-distro.mongodb.org/repo/redhat/os/x86_64/

二、利用安装包进行安装:

1、下载地址:https://www.mongodb.org/downloads

#wget https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-rhel62-3.0.4.tgz
2、创建数据和日志目录

#mkdir -p /data/mongodb/mongodb_data/ ; mkdir -p /data/mongodb/mongodb_log/

3、手动创建配置文件

vi /usr/local/mongodb/mongodb.conf

port=27017 #端口号

bind_ip=127.0.0.1 #绑定监听的IP,此处要特别注意

dbpath=/data/mongodb/mongodb_data/ #数据库路径

logpath=/data/mongodb/mongodb_log/mongodb.log #日志输出文件路径

pidfilepath=/usr/local/mongodb/mongo.pid

fork=true #设置后台运行

logappend=true #日志输出方式

shardsvr=true

directoryperdb=true

#auth=true #开启认证

:wq! #保存退出

4、启动服务

#cd /usr/local/mongodb/bin/

#./mongod -f /usr/local/mongodb/mongodb.conf

5、关闭服务
方法一:

#/usr/local/mongodb/bin/mongo 使用客户端进入,默认为 mongo 127.0.0.1:27017 如果更改了默认bind_ip或更换了服务端口,需要使用更改的P和端口连接

>
use
admin;
switched to db admin
>db.shutdownServer();      #注意区分大小写
方法二:
#/usr/local/mongodb/bin/mongod --shutdown --dbpath /data/mongodb_data/

关闭服务的方法还有其它,不过切记不可直接使用 KILL -9 命令杀进程。否则属于非正常退出而且可能会造成数据损坏问题,再次启动时会报错,需要删除data目录下的mongo.lock文件才能正常启动。

6、mongodb参数说明
--dbpath 指定数据库的目录。每个mongod进程都需要有独立的数据目录。当mongod启动时,会在数据目录中创建mongod.lock文件,用于防止其他mongod进程使用该数据目录。
--port 指定监听的端口,默认是27017 ,Web管理端口在这个port的基础上+1000,默认情况下web管理端口是开启的。--nohttpinterface关闭管理接口
--bind_ip 绑定监听的IP
--logpath 指定日志输出目录。需要对文件夹要有可写的权限,日志文件不存在时自动创建,存在时将会覆盖掉以前的记录。如果要保留原有日志,需要启用--logappend选项。
--logappend 指定日志生成方式(追加/覆盖)
--pidfilepath 指定进程文件路径,如果不指定,将不产生进程文件
--keyFile 集群模式的关键标识
--cpu 显示CPU和IO的利用率
--journal 开启日志功能,通过保存操作日志来降低单机故障的恢复时间,在1.8 版本后正式加入取代在1.7.5版本中的dur参数。
--ipv6 启用IPV6支持
--nssize 指定.ns 文件的大小,单位MB,默认是16M,最大是 2GB
--maxConns 最大的并发连接数
--notablescan 不允许进行表扫描
--quota 限制每个数据库的文件个数,默认是 8个
--quotaFiles 每个数据库的文件个数,配合—quota参数
--noprealloc 关闭数据文件的预分配功能
--fork 以守护进程方式运行
--syncdelay 系统同步刷新磁盘的时间,单位为秒,默认是60秒。
--directoryperdb 每个db存放在单独的目录中,建议设置该参数。与MySQL的独立表空间类似
--repairpath 执行repair时的临时目录。在如果没有开启journal,异常down机后重启,必须执行repair操作。
--rest用来RS中用于webadmin界面中显示RS的状态信息
--oplogSize 用来记录oplog的大小,单位MB,默认硬盘的5%
mongod的参数中,没有设置内存大小相关的参数,是的,MongoDB 使用 os mmap 机制来缓存数据文件数据,自身目前不提供缓存机制。

mongodb相关常用命令请参考: http://www.111cn.net/database/MongoDB/55024.htm
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: