zoukankan      html  css  js  c++  java
  • Centos 安装mongodb

    简介:yum 源安装MongoDB
     
    MongoDB v2.6.0版的软件仓库一共有五个包:
    1)mongodb-org
    此包是元数据包,它可以实现自动安装下面的4个组件包。
    2)mongodb-org-server
    此包里面有mongod守护程序,以及相关的配置和初始化脚本。
    3)mongodb-org-mongos
    此包里面有mongos守护程序。
    4)mongodb-org-shell
    此包里面有mongo shell环境。
    5)mongodb-org-tools
    此包里面有以下的MongoDB工具:mongoimport、bsondump、mongodump、mongoexport、mongofiles、mongoimport、mongooplog、mongoperf、mongorestore、mongostat以及mongotop。
     
    一、添加yum源文件:
    根据官网步骤(Install  on Red Hat),创建mongodb-org-3.2.repo文件。添加官方提供的yum源,因为网络原因,修改yum源为aliyun的yum源。
    1. [mongodb-org-3.2]
    2. name=MongoDBRepository
    3. #baseurl=https://repo.mongodb.org/yum/redhat/$releasever/mongodb-org/3.2/x86_64/
    4. baseurl=http://mirrors.aliyun.com/mongodb/yum/redhat/6/mongodb-org/3.2/x86_64/
    5. #gpgcheck=1
    6. gpgcheck=0
    7. enabled=1
    8. #gpgkey=https://www.mongodb.org/static/pgp/server-3.2.asc
     
    二、执行安装命令:
    1. [root@localhost yum.repos.d]# ls
    2. CentOS-Base.repo CentOS-Debuginfo.repo CentOS-Media.repo mongodb-org-3.2.repo
    3. CentOS-Base.repo.backup CentOS-fasttrack.repo CentOS-Vault.repo
    4. [root@localhost yum.repos.d]# yum info mongodb-org-3.2 #这个操作没懂是为啥?
    5. 已加载插件:fastestmirror, security
    6. Loading mirror speeds from cached hostfile
    7. *base: mirrors.aliyun.com
    8. * extras: mirrors.aliyun.com
    9. * updates: mirrors.aliyun.com
    10. 错误:没有匹配的软件包可以列出
    11.  
    12. [root@localhost yum.repos.d]# yum install -y mongodb-org
    13. 已加载插件:fastestmirror, security
    14. 设置安装进程
    15. Loading mirror speeds from cached hostfile
    16. *base: mirrors.aliyun.com
    17. * extras: mirrors.aliyun.com
    18. * updates: mirrors.aliyun.com
    19. 解决依赖关系
    20. -->执行事务检查
    21. --->Package mongodb-org.x86_64 0:3.2.10-1.el6 will be 安装
    22. -->处理依赖关系 mongodb-org-tools =3.2.10,它被软件包 mongodb-org-3.2.10-1.el6.x86_64 需要
    23. -->处理依赖关系 mongodb-org-shell =3.2.10,它被软件包 mongodb-org-3.2.10-1.el6.x86_64 需要
    24. -->处理依赖关系 mongodb-org-server =3.2.10,它被软件包 mongodb-org-3.2.10-1.el6.x86_64 需要
    25. -->处理依赖关系 mongodb-org-mongos =3.2.10,它被软件包 mongodb-org-3.2.10-1.el6.x86_64 需要
    26. -->执行事务检查
    27. --->Package mongodb-org-mongos.x86_64 0:3.2.10-1.el6 will be 安装
    28. --->Package mongodb-org-server.x86_64 0:3.2.10-1.el6 will be 安装
    29. --->Package mongodb-org-shell.x86_64 0:3.2.10-1.el6 will be 安装
    30. --->Package mongodb-org-tools.x86_64 0:3.2.10-1.el6 will be 安装
    31. -->完成依赖关系计算
    32. 依赖关系解决
    33. ==================================================================================================================================
    34. 软件包架构版本仓库大小
    35. ==================================================================================================================================
    36. 正在安装:
    37. mongodb-org x86_64 3.2.10-1.el6 mongodb-org-3.25.8 k
    38. 为依赖而安装:
    39. mongodb-org-mongos x86_64 3.2.10-1.el6 mongodb-org-3.26.0 M
    40. mongodb-org-server x86_64 3.2.10-1.el6 mongodb-org-3.213 M
    41. mongodb-org-shell x86_64 3.2.10-1.el6 mongodb-org-3.27.3 M
    42. mongodb-org-tools x86_64 3.2.10-1.el6 mongodb-org-3.242 M
    43. 事务概要
    44. ==================================================================================================================================
    45. Install5Package(s)
    46. 总文件大小:68 M
    47. 总下载量:6.0 M
    48. Installed size:199 M
    49. 下载软件包:
    50. (1/2): mongodb-org-3.2.10-1.el6.x86_64.rpm |5.8 kB 00:00
    51. (2/2): mongodb-org-mongos-3.2.10-1.el6.x86_64.rpm |6.0 MB 00:27
    52. ----------------------------------------------------------------------------------------------------------------------------------
    53. 总计219 kB/s |6.0 MB 00:28
    54. 运行 rpm_check_debug
    55. 执行事务测试
    56. 事务测试成功
    57. 执行事务
    58. 正在安装: mongodb-org-mongos-3.2.10-1.el6.x86_64 1/5
    59. 正在安装: mongodb-org-tools-3.2.10-1.el6.x86_64 2/5
    60. 正在安装: mongodb-org-shell-3.2.10-1.el6.x86_64 3/5
    61. 正在安装: mongodb-org-server-3.2.10-1.el6.x86_64 4/5
    62. 正在安装: mongodb-org-3.2.10-1.el6.x86_64 5/5
    63. Verifying: mongodb-org-server-3.2.10-1.el6.x86_64 1/5
    64. Verifying: mongodb-org-3.2.10-1.el6.x86_64 2/5
    65. Verifying: mongodb-org-shell-3.2.10-1.el6.x86_64 3/5
    66. Verifying: mongodb-org-tools-3.2.10-1.el6.x86_64 4/5
    67. Verifying: mongodb-org-mongos-3.2.10-1.el6.x86_64 5/5
    68. 已安装:
    69. mongodb-org.x86_64 0:3.2.10-1.el6
    70. 作为依赖被安装:
    71. mongodb-org-mongos.x86_64 0:3.2.10-1.el6 mongodb-org-server.x86_64 0:3.2.10-1.el6 mongodb-org-shell.x86_64 0:3.2.10-1.el6
    72. mongodb-org-tools.x86_64 0:3.2.10-1.el6
    73. 完毕!
    74. [root@localhost yum.repos.d]# rpm -qa | grep mongodb
    75. mongodb-org-3.2.10-1.el6.x86_64
    76. mongodb-org-tools-3.2.10-1.el6.x86_64
    77. mongodb-org-shell-3.2.10-1.el6.x86_64
    78. mongodb-org-server-3.2.10-1.el6.x86_64
    79. mongodb-org-mongos-3.2.10-1.el6.x86_64
    80. [root@localhost yum.repos.d]#
    81. [root@localhost yum.repos.d]# ls /usr/bin/mongo(tab键) mongo mongodump mongofiles mongooplog mongorestore mongostat mongod mongoexport mongoimport mongoperf mongos mongotop
     
    三、如果熟悉的话,可以修改配置文件,不熟悉保持默认即可。配置log位置和指定数据库路径位置:
    1. # mongod.conf
    2. # for documentation of all options, see:
    3. # http://docs.mongodb.org/manual/reference/configuration-options/
    4. # where to write logging data.
    5. systemLog:
    6. destination: file
    7. logAppend:true
    8. path:/var/log/mongodb/mongod.log
    9. # Where and how to store data.
    10. storage:
    11. dbPath:/var/lib/mongo
    12. journal:
    13. enabled:true
    14. # engine:
    15. # mmapv1:
    16. # wiredTiger:
    17. # how the process runs
    18. processManagement:
    19. fork:true# fork and run in background
    20. pidFilePath:/var/run/mongodb/mongod.pid # location of pidfile
    21. # network interfaces
    22. net:
    23. port:27017
    24. bindIp:127.0.0.1# Listen to local interface only, comment to listen on all interfaces.
    25. #security:
    26. #operationProfiling:
    27. #replication:
    28. #sharding:
    29. ## Enterprise-Only Options
    30. #auditLog:
    31. #snmp:
    4、启动MongoDB
    sudo service mongod start

    5、使MongoDB开机自动启动

    sudo chkconfig mongod on

    6、停止MongoDB

    sudo service mongod stop

    7、重启MongoDB

    sudo service mongod restart

    8、进入Mongo命令行

    1. [root@localhost yum.repos.d]# mongo
    2. MongoDB shell version:3.2.10
    3. connecting to: test
    4. Welcome to the MongoDB shell.
    5. For interactive help, type "help".
    6. For more comprehensive documentation, see
    7. http://docs.mongodb.org/
    8. Questions?Try the support group
    9. http://groups.google.com/group/mongodb-user
    10. Server has startup warnings:
    11. 2016-11-07T12:08:44.814+0800 I CONTROL [initandlisten]
    12. 2016-11-07T12:08:44.814+0800 I CONTROL [initandlisten]** WARNING:/sys/kernel/mm/transparent_hugepage/enabled is'always'.
    13. 2016-11-07T12:08:44.814+0800 I CONTROL [initandlisten]**We suggest setting it to 'never'
    14. 2016-11-07T12:08:44.814+0800 I CONTROL [initandlisten]
    15. 2016-11-07T12:08:44.814+0800 I CONTROL [initandlisten]** WARNING:/sys/kernel/mm/transparent_hugepage/defrag is'always'.
    16. 2016-11-07T12:08:44.814+0800 I CONTROL [initandlisten]**We suggest setting it to 'never'
    17. 2016-11-07T12:08:44.814+0800 I CONTROL [initandlisten]
    18. 2016-11-07T12:08:44.814+0800 I CONTROL [initandlisten]** WARNING: soft rlimits too low. rlimits set to 1024 processes,64000 files.Number of processes should be at least 32000:0.5 times number of files.
    19. 2016-11-07T12:08:44.814+0800 I CONTROL [initandlisten]
    20. >2+2
    21. 4
     
    参考链接:
     

    yum 源安装MongoDB

    MongoDB v2.6.0版的软件仓库一共有五个包:
    1)mongodb-org
    此包是元数据包,它可以实现自动安装下面的4个组件包。
    2)mongodb-org-server
    此包里面有mongod守护程序,以及相关的配置和初始化脚本。
    3)mongodb-org-mongos
    此包里面有mongos守护程序。
    4)mongodb-org-shell
    此包里面有mongo shell环境。
    5)mongodb-org-tools
    此包里面有以下的MongoDB工具:mongoimport、bsondump、mongodump、mongoexport、mongofiles、mongoimport、mongooplog、mongoperf、mongorestore、mongostat以及mongotop。

    1,创建mongodb.repo文件
    在/etc/yum.repos.d/目录下创建文件mongodb.repo,它包含MongoDB仓库的配置信息,内容如下:
    [mongodb]  
    name=MongoDB Repository  
    baseurl=http://downloads-distro.mongodb.org/repo/redhat/os/x86_64/  
    gpgcheck=0  
    enabled=1  

    2,执行安装命令
    # yum -y install mongodb-org
    Loaded plugins: fastestmirror, security
    Loading mirror speeds from cached hostfile
     * base: mirrors.yun-idc.com
     * epel: mirrors.yun-idc.com
     * extras: mirrors.yun-idc.com
     * updates: mirrors.yun-idc.com
    Setting up Install Process
    Package mongodb-org-2.6.3-1.x86_64 already installed and latest version
    Nothing to do
    # rpm -qa |grep mongodb
    mongodb-org-2.6.3-1.x86_64
    mongodb-org-mongos-2.6.3-1.x86_64
    mongodb-org-shell-2.6.3-1.x86_64
    mongodb-org-server-2.6.3-1.x86_64
    mongodb-org-tools-2.6.3-1.x86_64

    3,自定义db和log存放路径
    新建存放DB目录
    #mkdir -p /data/mongodb/log
    设置属主和属组,安装mongodb后会新建一个账号mongodb
    #chown -R  mongod:mongod /data/mongodb 
    #egrep 'dbpath|logpath' /etc/mongod.conf
    logpath=/data/mongodb/log/mongod.log
    dbpath=/data/mongodb

    4,设置日志大小,并发连接数
    oplogSize=4096
    maxConns=3280
    总配置文件如下:
    # grep -Ev '^#|^$' /etc/mongod.conf
    logpath=/data/mongodb/log/mongod.log
    logappend=true
    fork=true
    port=27017
    dbpath=/data/mongodb
    pidfilepath=/var/run/mongodb/mongod.pid
    oplogSize=4096
    maxConns=3280
    directoryperdb=true
    nojournal=true
    replSet=rpls
    启动mongod
    # service mongod restart
    Stopping mongod: [  OK  ]
    Starting mongod: [  OK  ] 
    查看文件
    # ls /data/mongodb/
    journal  local.0  local.ns  mongod.lock  _tmp
    查看端口是否开启
    # ss -anp |grep mongod
    LISTEN     0      128               127.0.0.1:27017                    *:*      users:(("mongod",9295,9))


    5,设置开机自动启动mongodb
    #chkconfig mongod on

    6,Mongodb启动命令mongod参数说明

    mongod的主要参数有:

     基本配置

    --------------------------------------------------------------------------------

    --quiet     # 安静输出
    --port arg     # 指定服务端口号,默认端口27017
    --bind_ip arg     # 绑定服务IP,若绑定127.0.0.1,则只能本机访问,不指定默认本地所有IP
    --logpath arg     # 指定MongoDB日志文件,注意是指定文件不是目录
    --logappend     # 使用追加的方式写日志
    --pidfilepath arg     # PID File 的完整路径,如果没有设置,则没有PID文件
    --keyFile arg     # 集群的私钥的完整路径,只对于Replica Set 架构有效
    --unixSocketPrefix arg     # UNIX域套接字替代目录,(默认为 /tmp)
    --fork     # 以守护进程的方式运行MongoDB,创建服务器进程
    --auth     # 启用验证
    --cpu     # 定期显示CPU的CPU利用率和iowait
    --dbpath arg     # 指定数据库路径
    --diaglog arg     # diaglog选项 0=off 1=W 2=R 3=both 7=W+some reads
    --directoryperdb     # 设置每个数据库将被保存在一个单独的目录
    --journal     # 启用日志选项,MongoDB的数据操作将会写入到journal文件夹的文件里
    --journalOptions arg     # 启用日志诊断选项
    --ipv6     # 启用IPv6选项
    --jsonp     # 允许JSONP形式通过HTTP访问(有安全影响)
    --maxConns arg     # 最大同时连接数 默认2000
    --noauth     # 不启用验证
    --nohttpinterface     # 关闭http接口,默认关闭27018端口访问
    --noprealloc     # 禁用数据文件预分配(往往影响性能)
    --noscripting     # 禁用脚本引擎
    --notablescan     # 不允许表扫描
    --nounixsocket     # 禁用Unix套接字监听
    --nssize arg (=16)     # 设置信数据库.ns文件大小(MB)
    --objcheck     # 在收到客户数据,检查的有效性,
    --profile arg     # 档案参数 0=off 1=slow, 2=all
    --quota     # 限制每个数据库的文件数,设置默认为8
    --quotaFiles arg     # number of files allower per db, requires --quota
    --rest     # 开启简单的rest API
    --repair     # 修复所有数据库run repair on all dbs
    --repairpath arg     # 修复库生成的文件的目录,默认为目录名称dbpath
    --slowms arg (=100)     # value of slow for profile and console log
    --smallfiles     # 使用较小的默认文件
    --syncdelay arg (=60)     # 数据写入磁盘的时间秒数(0=never,不推荐)
    --sysinfo     # 打印一些诊断系统信息
    --upgrade     # 如果需要升级数据库
     * Replicaton 参数

    --------------------------------------------------------------------------------

    --fastsync     # 从一个dbpath里启用从库复制服务,该dbpath的数据库是主库的快照,可用于快速启用同步
    --autoresync     # 如果从库与主库同步数据差得多,自动重新同步,
    --oplogSize arg     # 设置oplog的大小(MB)
     * 主/从参数

    --------------------------------------------------------------------------------

    --master     # 主库模式
    --slave     # 从库模式
    --source arg     # 从库 端口号
    --only arg     # 指定单一的数据库复制
    --slavedelay arg     # 设置从库同步主库的延迟时间
     * Replica set(副本集)选项:

    --------------------------------------------------------------------------------

    --replSet arg     # 设置副本集名称
     * Sharding(分片)选项

    --------------------------------------------------------------------------------
    --configsvr     # 声明这是一个集群的config服务,默认端口27019,默认目录/data/configdb
    --shardsvr     # 声明这是一个集群的分片,默认端口27018
    --noMoveParanoia     # 关闭偏执为moveChunk数据保存
     
    服务器配置:/etc/mongod.conf
    1. # mongo.conf
    2. #where to log
    3. logpath=/var/log/mongo/mongod.log
    4. logappend=true#以追加方式写入日志
    5. # fork and run in background
    6. fork =true
    7. #port = 27017 #端口
    8. dbpath=/var/lib/mongo #数据库文件保存位置
    9. directoryperdb=true
    10. # Enables periodic logging of CPU utilization and I/O wait
    11. #启用定期记录CPU利用率和 I/O 等待
    12. #cpu = true
    13. # Turn on/off security. Off is currently the default
    14. # 是否以安全认证方式运行,默认是不认证的非安全方式
    15. #noauth = true
    16. #auth = true
    17. # Verbose logging output.
    18. # 详细记录输出
    19. #verbose = true
    20. # Inspect all client data for validity on receipt (useful for
    21. # developing drivers)用于开发驱动程序时的检查客户端接收数据的有效性
    22. #objcheck = true
    23. # Enable db quota management 启用数据库配额管理,默认每个db可以有8个文件,可以用quotaFiles参数设置
    24. #quota = true
    25. # 设置oplog记录等级
    26. # Set oplogging level where n is
    27. # 0=off (default)
    28. # 1=W
    29. # 2=R
    30. # 3=both
    31. # 7=W+some reads
    32. #oplog = 0
    33. # Diagnostic/debugging option 动态调试项
    34. #nocursors = true
    35. # Ignore query hints 忽略查询提示
    36. #nohints = true
    37. # 禁用http界面,默认为localhost:28017
    38. # Disable the HTTP interface (Defaults to localhost:27018).这个端口号写的是错的
    39. #nohttpinterface = true
    40. # 关闭服务器端脚本,这将极大的限制功能
    41. # Turns off server-side scripting. This will result in greatly limited
    42. # functionality
    43. #noscripting = true
    44. # 关闭扫描表,任何查询将会是扫描失败
    45. # Turns off table scans. Any query that would do a table scan fails.
    46. #notablescan = true
    47. # 关闭数据文件预分配
    48. # Disable data file preallocation.
    49. #noprealloc = true
    50. # 为新数据库指定.ns文件的大小,单位:MB
    51. # Specify .ns file size for new databases.
    52. # nssize = <size>
    53. # Accout token for Mongo monitoring server.
    54. #mms-token = <token>
    55. # mongo监控服务器的名称
    56. # Server name for Mongo monitoring server.
    57. #mms-name = <server-name>
    58. # mongo监控服务器的ping 间隔
    59. # Ping interval for Mongo monitoring server.
    60. #mms-interval = <seconds>
    61. # Replication Options 复制选项
    62. # in replicated mongo databases, specify here whether this is a slave or master 在复制中,指定当前是从属关系
    63. #slave = true
    64. #source = master.example.com
    65. # Slave only: specify a single database to replicate
    66. #only = master.example.com
    67. # or
    68. #master = true
    69. #source = slave.example.com
     





  • 相关阅读:
    【转】使用python编写网络通信程序
    【转】linux下的单线程
    【转】使用python进行多线程编程
    mysql数据库安装、启动及权限设置
    【转】Linux下的多线程编程背景知识
    开关电源使用
    ubi实际使用
    xshell快捷键
    Nandflash镜像尾部不应填充0xFF
    CRC校验
  • 原文地址:https://www.cnblogs.com/lookphp/p/6042679.html
Copyright © 2011-2022 走看看