原文引用:http://blog.chinaunix.net/uid-24250828-id-3770298.html

官方网站:

http://www.mongodb.org/

MongoDB 安裝,主从配置

一 MongoDB 安装

点击(此处)折叠或打开

yum install wget  #选y  在线下载

  1. [root@zabbix_server src]# wget http://fastdl.mongodb.org/linux/mongodb-linux-x86_64-2.0.0.tgz
  2. [root@zabbix_server src]# tar xzvf mongodb-linux-x86_64-2.0.0.tgz
  3. [root@zabbix_server src]# mv mongodb-linux-x86_64-2.0.0 /usr/local/mongodb
  4. [root@zabbix_server src]# mkdir /usr/local/mongodb/data
  5. [root@zabbix_server src]# touch /usr/local/mongodb/logs
  6. [root@zabbix_server bin]# /usr/local/mongodb/bin/mongod –dbpath=/usr/local/mongodb/data –logpath=/usr/local/mongodb/logs –logappend –port=27017 –fork
  7. [root@zabbix_server bin]# ./mongo
  8. MongoDB shell version: 2.0.0
  9. connecting to: test
  10. > use test;
  11. switched to db test
  12. > exit
  13. bye
  14. [root@zabbix_server bin]# netstat -anlpt | grep mongo
  15. tcp 0 0 0.0.0.0:27017 0.0.0.0:* LISTEN 11504/mongod
  16. tcp 0 0 0.0.0.0:28017 0.0.0.0:* LISTEN 11504/mongod

注意:
如果报错
-bash: /usr/local/mongodb/bin/mongod: cannot execute binary file
说明你的服务器和mongodb 的版本不对应, 如果服务器是64位,下载x86_64的mongodb ,如果服务器是32位的, 下载i686的mongodb/

二 MongoDB 主从配置

1)实验环境
主:192.168.0.14
从:192.168.0.64

2)时间同步
两台机器做时间同步
[root@zabbix_server src]# ntpdate time.windows.com

3)启动服务
master:192.168.0.14
启动命令
/usr/local/mongodb/bin/mongod –master –dbpath=/usr/local/mongodb/data –logpath=/usr/local/mongodb/logs –logappend –port=27017 –fork

slave:192.168.0.64
启动命令
/usr/local/mongodb/bin/mongod –slave –source 192.168.0.14:27017 –dbpath=/usr/local/mongodb/data –logpath=/usr/local/mongodb/logs –logappend –port=27017 –fork

4)测试主从
在主上插入数据
测试1:

点击(此处)折叠或打开

  1. 测试1:
  2. 1 在主库上插入数据
  3. [root@cacti bin]# ./mongo
  4. MongoDB shell version: 2.0.0
  5. connecting to: test
  6. > db.foo.save({“id”:123456,”name”:’lizonggang’})
  7. > db.foo.find({“id”:123456})
  8. { ”_id” : ObjectId(“51c3f4b21399022afd992f39″), ”id” : 123456, ”name” : ”lizonggang” }
  9. >
  10. 2 在从上查看数据(已有在主上插入的数据,说明主从成功)
  11. [root@zabbix_server bin]# ./mongo
  12. MongoDB shell version: 2.0.0
  13. connecting to: test
  14. > db.foo.find({“id”:123456})
  15. { ”_id” : ObjectId(“51c3f4b21399022afd992f39″), ”id” : 123456, ”name” : ”lizonggang” }
  16. >

测试2:

点击(此处)折叠或打开

  1. 1 在主库上插入数据
  2. > use elaindb
  3. switched to db elaindb
  4. > db.test.save({title:”This is a test!”})
  5. > db.test.find();
  6. { ”_id” : ObjectId(“51c3f8f11a90c8da157c7f64″), ”title” : ”This is a test!” }
  7. >
  8. 2 在从库上验证数据
  9. [root@zabbix_server bin]# ./mongo
  10. MongoDB shell version: 2.0.0
  11. connecting to: test
  12. > use elaindb
  13. switched to db elaindb
  14. > db.test.find();
  15. { ”_id” : ObjectId(“51c3f8f11a90c8da157c7f64″), ”title” : ”This is a test!” }
  16. > db.printReplicationInfo();
  17. this is a slave, printing slave replication info.
  18. source: 192.168.0.14:27017
  19. syncedTo: Fri Jun 21 2013 14:59:10 GMT+0800 (CST)
  20. = 9 secs ago (0hrs)
  21. >
  22. > db.printSlaveReplicationInfo();
  23. source: 192.168.0.14:27017
  24. syncedTo: Fri Jun 21 2013 14:59:30 GMT+0800 (CST)
  25. = 16 secs ago (0hrs)
  26. >

测试3:

点击(此处)折叠或打开

  1. 在这个状态下,slave 下是不可以插入数据的
  2. > db.test.save({title:”This is slave test!”})
  3. not master

5) 一些查询状态的语句

1)查询库

点击(此处)折叠或打开

  1. > show dbs;
  2. elaindb 0.0625GB
  3. local 0.125GB
  4. test 0.0625GB

2)在从库上查询主库的地址

点击(此处)折叠或打开

  1. > use local;
  2. switched to db local
  3. > db.sources.find()
  4. { ”_id” : ObjectId(“51c3f5dd568d10529950b10d”), ”host” : ”192.168.0.14:27017″, ”source” : ”main”, ”syncedTo” : { ”t” : 1371797300000, ”i” : 1 } }
  5. >

3)查看主从复制状态

点击(此处)折叠或打开

  1. > db.printReplicationInfo();
  2. configured oplog size: 47.6837158203125MB
  3. log length start to end: 1375secs (0.38hrs)
  4. oplog first event time: Fri Jun 21 2013 14:30:35 GMT+0800 (CST)
  5. oplog last event time: Fri Jun 21 2013 14:53:30 GMT+0800 (CST)
  6. now: Fri Jun 21 2013 14:53:32 GMT+0800 (CST)
  7. >

4)查看Collection状态

点击(此处)折叠或打开

  1. > db.printCollectionStats();
  2. foo
  3. {
  4. ”ns” : ”test.foo”,
  5. ”count” : 1,
  6. ”size” : 56,
  7. ”avgObjSize” : 56,
  8. ”storageSize” : 4096,
  9. ”numExtents” : 1,
  10. ”nindexes” : 1,
  11. ”lastExtentSize” : 4096,
  12. ”paddingFactor” : 1,
  13. ”flags” : 1,
  14. ”totalIndexSize” : 8176,
  15. ”indexSizes” : {
  16. ”_id_” : 8176
  17. },
  18. ”ok” : 1
  19. }
  20. system.indexes
  21. {
  22. ”ns” : ”test.system.indexes”,
  23. ”count” : 1,
  24. ”size” : 64,
  25. ”avgObjSize” : 64,
  26. ”storageSize” : 4096,
  27. ”numExtents” : 1,
  28. ”nindexes” : 0,
  29. ”lastExtentSize” : 4096,
  30. ”paddingFactor” : 1,
  31. ”flags” : 0,
  32. ”totalIndexSize” : 0,
  33. ”indexSizes” : {
  34. },
  35. ”ok” : 1
  36. }
  37. >

6)应急
如果在应用中主挂掉了怎么办?
这个情况就需要,停止从库, 把从库以主库的启动命令起来就可以了。

1)停掉从库

kill -9 进程号

2)删除locat下文件

点击(此处)折叠或打开

  1. rm mongodb/db/locat.* -rf

3)启动从库

点击(此处)折叠或打开

  1. /usr/local/mongodb/bin/mongod –master –dbpath=/usr/local/mongodb/data –logpath=/usr/local/mongodb/logs –logappend –port=27017 –fork

6) Mongdb Web 查看界面

7) MongoDB 增,删,改,查

点击(此处)折叠或打开

  1. [root@cacti bin]# ./mongo
  2. MongoDB shell version: 2.0.0
  3. connecting to: test
  4. > db.test.insert({ ”Name” : ”ymind”, ”age” : 8 }); #在test数据库里插入数据
  5. >
  6. > db.test.find({ ”Name” : ”ymind” } ); #查询数据
  7. { ”_id” : ObjectId(“51c4187090db4e4751a3cd05″), ”Name” : ”ymind”, ”age” : 8 }
  8. > db.test.find({ ”age” : 8} ); #查询数据
  9. { ”_id” : ObjectId(“51c4187090db4e4751a3cd05″), ”Name” : ”ymind”, ”age” : 8 }
  10. >
  11. >
  12. > db.test.update({“Name” : ”ymind”}, { ”$set” : { ”age” : ”5″ } } ); #修改数据
  13. > db.test.find({ ”Name” : ”ymind” } );
  14. { ”Name” : ”ymind”, ”_id” : ObjectId(“51c4187090db4e4751a3cd05″), ”age” : ”5″ }
  15. >
  16. > db.test.remove({ ”Name” : ”ymind” } ); #删除数据
  17. > db.test.find({ ”Name” : ”ymind” } );

centos 安装mongodb的更多相关文章

  1. CentOS 安装 MongoDB

    一.安装mongodb 本文介绍的安装方式是以二进制方式离线安装,相当于windows"绿色"安装版本的概念. 下载mongodb: # https://www.mongodb.c ...

  2. centos安装mongodb 4.x及配置用户名密码(官方推荐的方式)

    安装mongodb 先在本地用记事本做一个这样的文件(命名为:mongodb-org-4.0.repo): [mongodb-org-4.0] name=MongoDB Repository base ...

  3. centos安装mongodb 3.2.9

    centos 6.5 x64 1.下载地址:用迅雷下载,直接下载下不动 https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-rhel62-3.2 ...

  4. CentOS安装MongoDB

    1. touch /etc/yum.repos.d/mongodb.repo vi /etc/yum.repos.d/mongodb.repo [mongodb]        name=MongoD ...

  5. CentOS 安装 Mongodb详解 --- 无Linux基础

    先去官方下载离线安装包:https://www.mongodb.com/ ftp连接一下服务器,把离线包上传上去 XShell连接一下: 解压文件(你输一点就可以按tab键,它会自动补全):tar - ...

  6. CentOS 安装 Mongodb详解 --- 有Linux基础

    安装包:https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-rhel70-3.4.1.tgz 安装过程 安装pstree小工具,以及其使用 关闭 ...

  7. linux centos 安装mongoDB

    1.下载mongoDB 例如下载3.2.19 64位版本 https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-rhel70-3.2.19.tgz ...

  8. YUM安装MONGODB发生Error in PREIN scriptlet in rpm package mongodb-enterprise-server-4.0.2-1.el6.x86_64错误

    YUM安装MONGODB发生Error in PREIN scriptlet in rpm package mongodb-enterprise-server-4.0.2-1.el6.x86_64错误 ...

  9. CentOS7 编译安装 Mongodb (实测 笔记 Centos 7.0 + Mongodb 2.6.6)

    环境: 系统硬件:vmware vsphere (CPU:2*4核,内存2G,双网卡) 系统版本:CentOS-7.0-1406-x86_64-DVD.iso 安装步骤: 1.准备 1.1 显示系统版 ...

随机推荐

  1. 正则提取 html 里<input> 标记的value 值

    获取html 标记的值: :年月日 结果:您选择的是2014年1月22日 使用了Regex 对象,得到一个 MatchCollection,然后进行处理. string mes = @"&l ...

  2. c#控制台調用SSIS包互传值

    有时候不仅仅需要在内部执行package包,多数情况下,是需要在外部进行调用,比如,需要一个批处理或者控制台程序进行外部调用SSIS包,而往往这个包所配置的连接字符串是经过加密处理的,所以当外部调用S ...

  3. Ajax.BeginForm()实现ajax无刷新提交

    1. 同时安装 Microsoft jQuery Unobtrusive ajax 和 jQuery Unobtrusive Ajax,如下图 安装完成之后多了如下的js库 2. 引用该js库 lay ...

  4. Canny边缘检测

    1.Canny边缘检测基本原理      (1)图象边缘检测必须满足两个条件:一能有效地抑制噪声:二必须尽量精确确定边缘的位置.      (2)根据对信噪比与定位乘积进行测度,得到最优化逼近算子.这 ...

  5. EF之结构进一步优化

    针对之前的使用,做了进一步优化 1.将DAL对象缓存起来 2.仓储类不依赖固定构造的DbContext,执行操作的时候,从线程中动态读取DbContext,这一步也是为了方便将DAL对象缓存起来,解决 ...

  6. 系统服务监视、系统服务守护 ServiceMonitor

    源码及版权来自易语言论坛邓学彬,本人只是稍微修改了一下. 下载链接: https://pan.baidu.com/s/1i4Aja4l 密码: 8fuv

  7. 【前端】Node.js学习笔记

    module.exports 使用方式: // File Name: hello.js function greet() {/*......*/} // 有下面这两种写法: // 1. module. ...

  8. Oracle客户端配置

    1.  打开开发生产数据库系统,点击下载Oracle_12C_Client32,并且解压缩. 2.  找到文件下的setup.exe文件,并且执行. 3.  等待数秒,在如下界面中选择第二项,管理员, ...

  9. word域2

    一.域应用基础 1.什么是域 简单地讲,域就是引导Word在文档中自动插入文字.图形.页码或其他信息的一组代码.每个域都有一个唯一的名字,它具有的功能与Excel中的函数非常相似.下面以Seq和Dat ...

  10. Python之操作Redis、 RabbitMQ、SQLAlchemy、paramiko、mysql

    一.Redis Redis是一个开源的使用ANSI C语言编写.支持网络.可基于内存亦可持久化的日志型.Key-Value数据库,并提供多种语言的API.Redis是一个key-value存储系统.和 ...