前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Mongodb - Centos7下yum安装mongodb服务

Mongodb - Centos7下yum安装mongodb服务

作者头像
拓荒者
发布2019-03-11 16:04:14
9940
发布2019-03-11 16:04:14
举报
文章被收录于专栏:运维经验分享

mongodb.png

centos7下面安装MongoDB服务,可以采用 YUM 的方式或者 二进制解压缩的方式,这里采用 YUM 的方式

安装之前检查

  • 检查系统是多少位主机,以便于添加对应的yum源
  • 确保 SELINUX 是disable状态
代码语言:javascript
复制
## 检查系统
root@pts/1 $ uname -a
Linux milian-mysql-slave 3.10.0-229.4.2.el7.x86_64 #1 SMP Wed May 13 10:06:09 UTC 2015 x86_64 x86_64 x86_64 GNU/Linux

## 禁止 selinux
root@pts/1 $ cat /etc/selinux/config |grep -v '#' |grep -i selinux
SELINUX=disabled
SELINUXTYPE=targeted 

## 如果没有则需要修改配置,并且重启
sed -i '/SELINUX/s/enforcing/disabled/' /etc/selinux/config 

添加Yum源

根据 mongodb 官网提供的信息,添加 yum 源如下

代码语言:javascript
复制
cat /etc/yum.repos.d/mongodb-3.2.repos
[mongodb-org-3.2]
name=MongoDB Repository
baseurl=https://repo.mongodb.org/yum/redhat/$releasever/mongodb-org/3.2/x86_64/
gpgcheck=1
enabled=1
gpgkey=https://www.mongodb.org/static/pgp/server-3.2.asc

*** 这里可以修改 gpgcheck=0, 省去gpg验证 ***

安装mongodb

安装之前可以先update packages(可选操作)

代码语言:javascript
复制
yum update

*** 安装 ***

代码语言:javascript
复制
yum -y install mongodb-org mongodb-org-server

配置,启动和使用 mongodb

Centos7 开始采用 systemd 来管理服务

*** 配置 ***

代码语言:javascript
复制
fork=true   ## 允许程序在后台运行
#auth=true  ## 开始认证
logpath=/data/db/mongodb/logs/mongodb.log   
logappend=true      # 写日志的模式:设置为true为追加。默认是覆盖
dbpath=/data/db/mongodb/data/    ## 数据存放目录
pidfilepath=/data/db/mongodb/logs/mongodb.pid    # 进程ID,没有指定则启动时候就没有PID文件。默认缺省。
port=27017
#bind_ip=192.168.2.73   # 绑定地址。默认127.0.0.1,只能通过本地连接
# 设置为true,修改数据目录存储模式,每个数据库的文件存储在DBPATH指定目录的不同的文件夹中。
# 使用此选项,可以配置的MongoDB将数据存储在不同的磁盘设备上,以提高写入吞吐量或磁盘容量。默认为false。
# 建议一开始就配置次选项
directoryperdb=true

# 禁止日志 
# 对应 journal 启用操作日志,以确保写入持久性和数据的一致性,会在dbpath目录下创建journal目录
nojournal = true   

## max connections
# 最大连接数。默认值:取决于系统(即的ulimit和文件描述符)限制。
# MongoDB中不会限制其自身的连接。当设置大于系统的限制,则无效,以系统限制为准。
# 设置该值的高于连接池和总连接数的大小,以防止尖峰时候的连接。
# 注意:不能设置该值大于20000。
maxConns=1024

但是实际配置中配置1024在系统的中告警 --maxConns too high, can only handle 819, 暂时找到是什么原因

*** 启动 Mongo ***

代码语言:javascript
复制
## 检查 mongodb 是否允许系统启动
systemctl is-enabled mongodb

## 使 mongodb 系统启动
systemctl enable mongodb

## 启动
systemctl start mongodb

## 查看启动状态
systemctl status mongodb 

## 停止
systemctl stop mongodb

*** 使用 Mongo ***

代码语言:javascript
复制
root@pts/4 $ mongo --help
MongoDB shell version: 3.0.6
usage: mongo [options] [db address] [file names (ending in .js)]
db address can be:
  foo                   foo database on local machine
  192.169.0.5/foo       foo database on 192.168.0.5 machine
  192.169.0.5:9999/foo  foo database on 192.168.0.5 machine on port 9999
Options:
  --shell                            run the shell after executing files
  --nodb                             don't connect to mongod on startup - no 
                                     'db address' arg expected
  --norc                             will not run the ".mongorc.js" file on 
                                     start up
  --quiet                            be less chatty
  --port arg                         port to connect to
  --host arg                         server to connect to
  --eval arg                         evaluate javascript
  -h [ --help ]                      show this usage information
  --version                          show version information
  --verbose                          increase verbosity
  --ipv6                             enable IPv6 support (disabled by default)
  --ssl                              use SSL for all connections
  --sslCAFile arg                    Certificate Authority file for SSL
  --sslPEMKeyFile arg                PEM certificate/key file for SSL
  --sslPEMKeyPassword arg            password for key in PEM file for SSL
  --sslCRLFile arg                   Certificate Revocation List file for SSL
  --sslAllowInvalidHostnames         allow connections to servers with 
                                     non-matching hostnames
  --sslAllowInvalidCertificates      allow connections to servers with invalid 
                                     certificates
  --sslFIPSMode                      activate FIPS 140-2 mode at startup

Authentication Options:
  -u [ --username ] arg              username for authentication
  -p [ --password ] arg              password for authentication
  --authenticationDatabase arg       user source (defaults to dbname)
  --authenticationMechanism arg      authentication mechanism
  --gssapiServiceName arg (=mongodb) Service name to use when authenticating 
                                     using GSSAPI/Kerberos
  --gssapiHostName arg               Remote host name to use for purpose of 
                                     GSSAPI/Kerberos authentication

file names: a list of files to run. files have to end in .js and will exit after unless --shell is specified

*** 例子 ***

代码语言:javascript
复制
root@pts/2 $ mongo localhost/test
MongoDB shell version: 3.0.6
connecting to: localhost/test
Server has startup warnings: 
2015-09-08T14:29:50.163+0800 I CONTROL  [initandlisten] 
2015-09-08T14:29:50.163+0800 I CONTROL  [initandlisten] ** WARNING: /sys/kernel/mm/transparent_hugepage/enabled is 'always'.
2015-09-08T14:29:50.163+0800 I CONTROL  [initandlisten] **        We suggest setting it to 'never'
2015-09-08T14:29:50.163+0800 I CONTROL  [initandlisten] 
2015-09-08T14:29:50.163+0800 I CONTROL  [initandlisten] ** WARNING: /sys/kernel/mm/transparent_hugepage/defrag is 'always'.
2015-09-08T14:29:50.163+0800 I CONTROL  [initandlisten] **        We suggest setting it to 'never'
2015-09-08T14:29:50.163+0800 I CONTROL  [initandlisten] 
> show dbs
local             0.078GB
weic              0.203GB
weictest          0.078GB
> use weic
switched to db weic
> show collections
actorAudio
attention
audio
system.indexes
tagInfo
> db.tagInfo.findOne()
{
    "_id" : ObjectId("563c871f8105044098c6c761"),
    "id" : NumberLong(1),
    "name" : "声音萌软淑"
}
> 

(adsbygoogle = window.adsbygoogle || []).push({});

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2018/03/07 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 安装之前检查
  • 添加Yum源
  • 安装mongodb
  • 配置,启动和使用 mongodb
相关产品与服务
云数据库 MongoDB
腾讯云数据库 MongoDB(TencentDB for MongoDB)是腾讯云基于全球广受欢迎的 MongoDB 打造的高性能 NoSQL 数据库,100%完全兼容 MongoDB 协议,支持跨文档事务,提供稳定丰富的监控管理,弹性可扩展、自动容灾,适用于文档型数据库场景,您无需自建灾备体系及控制管理系统。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档