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

ttlsa教程系列之mongodb—---(二)mongodb安装

2014-03-23 00:00 656 查看
拖那么久了才贴出这节内容。由于最近在搬家没网络,以及种种不愉快的租房经历, 体会到了农民工维权之艰辛,如果有能力帮助需要帮助者希望大家能伸出一双手,同时也提醒大家在租房过程中多多谨慎谨慎。 上一节介绍了mongodb的一些基本理论,如特性、应用场景、工作方式、数据类型、命令规则和驱动连接方式。这节讲mongodb的安装,了解并掌握一款应用最好的方法就是去使用它,百闻不如一见,百见不如一练。 一. 安装 1. 下载最新版本 mongodb版本更新很快。
# wget http://fastdl.mongodb.org/linux/mongodb-linux-x86_64-2.4.5.tgz[/code] 2. 创建数据库目录 mongodb默认不会自动创建数据库目录。
# mkdir /data/mongodb_27017
3. 创建配置文件
# vim /usr/local/mongodb/etc/mongodb_27017.cnf
dbpath = /data/mongodb_27017/data
directoryperdb = true
port = 27017
bind_ip = 10.1.10.155
rest = true
fork = ture
logappend = true
logpath = /data/weblogs/mongodb_log/mongodb_27017.log
replSet = ttlsa
journal = true
oplogSize = 2000
nohttpinterface = true
cpu = true
4. 启动服务
# /usr/local/mongodb/bin/mongod -f /etc/mongodb_27017.cnf
5. mongodb参数说明 --dbpath 指定数据库的目录。每个mongod进程都需要有独立的数据目录。当mongod启动时,会在数据目录中创建mongod.lock文件,用于防止其他mongod进程使用该数据目录。 --port 指定监听的端口,默认是27017 ,Web管理端口在这个port的基础上+1000,默认情况下web管理端口是开启的。--nohttpinterface关闭管理接口 --bind_ip 绑定监听的IP --directoryperdb 为每个db创建一个独立子目录 --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 机制来缓存数据文件数据,自身目前不提供缓存机制。 6. 查看启动参数
# /usr/local/mongodb/bin/mongo 10.1.10.155:27017
ttlsa:SECONDARY> use admin
switched to db admin
ttlsa:SECONDARY> db.runCommand({getCmdLineOpts: 1})
{
"argv" : [
"/usr/local/mongodb/bin/mongod",
"--config",
"/data/mongodb_27017/conf/mongodb.conf"
],
"parsed" : {
"bind_ip" : "10.1.10.155",
"config" : "/data/mongodb_27017/conf/mongodb.conf",
"cpu" : "true",
"dbpath" : "/data/mongodb_27017/data",
"directoryperdb" : "true",
"fork" : "ture",
"journal" : "true",
"logappend" : "true",
"logpath" : "/data/weblogs/mongodb_log/mongodb_27017.log",
"nohttpinterface" : "true",
"oplogSize" : 2000,
"port" : 27017,
"replSet" : "ttlsa",
"rest" : "true"
},
"ok" : 1
}
7. 关闭服务
> use admin;
switched to db admin
> db.shutdownServer();
//或者执行
>db.runCommand( “shutdown”);
//或者执行
> db.adminCommand(“shutdown”);
8. 动态更改配置参数 > db.adminCommand({setParameter:1, option1: true , ...})
> db.adminCommand({setParameter:1, logLevel:4})
9. 获取mongodb状态信息
> db.serverStatus()
10. 查看数据库状态信息
> db.stats()
11. 获取当前的进程
> db.currentOp()
二. 工具介绍 bsondump: 将bson格式的文件转储为json格式的数据 mongo: 客户端命令行工具,其实也是一个javascript解释器,支持javascript语法 mongod: 数据库服务端,每个实例启动一个进程,可以fork为后台运行 mongodump/ mongorestore: 数据库备份和恢复工具 mongoexport/ mongoimport: 数据导出和导入工具 mongofiles: GridFS管理工具,可实现二制文件的存取 mongos: 分片路由,如果使用了 sharding 功能,则应用程序连接的是 mongos 而不是mongod mongosniff: 这一工具的作用类似于tcpdump,不同的是他只监控MongoDB 相关的包请求,并且是以指定的可读性的形式输出 mongostat: 实时性能监控工具 下一节将讲解mongodb的增删查改,请关注,有问题请跟帖说明或进Q群:39514058
转载请注明出处:http://www.ttlsa.com/html/1607.html
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  mongodb