Linux 系统安装 Mongodb 数据库
一、通过rpm方式安装
1、系统准备
我们的系统版本为
CentOS Linux release 7.3.1611 (Core)
2、安装包下载
下载地址:http://mirrors.aliyun.com/mongodb/yum/redhat/ ,可以根据自己的系统版本选择。
我选择的路径:http://mirrors.aliyun.com/mongodb/yum/redhat/7/mongodb-org/3.2/x86_64/RPMS/ 。
我选择 mongodb 的版本是
3.2.6,软件包如下:
mongodb-org-3.2.6-1.el7.x86_64.rpm
mongodb-org-mongos-3.2.6-1.el7.x86_64.rpm
mongodb-org-server-3.2.6-1.el7.x86_64.rpm
mongodb-org-shell-3.2.6-1.el7.x86_64.rpm
mongodb-org-tools-3.2.6-1.el7.x86_64.rpm
3、开始安装
yum install *.rpm
4、创建数据目录
install -o mongod -g mongod -d /data/mongodb
5、修改配置文件 /etc/mongod.conf
修改dbPath 和注释掉 bindIP
storage: dbPath: /data/mongodb journal: enabled: true net: port: 27017 # bindIp: 127.0.0.1
6、启动mongodb
systemctl start mongod chkconfig mongod on
7、检查
[root@mbasic ~]# netstat -tlnp Active Internet connections (only servers) Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 16640/sshd tcp 0 0 127.0.0.1:25 0.0.0.0:* LISTEN 1924/master tcp 0 0 0.0.0.0:10050 0.0.0.0:* LISTEN 16724/zabbix_agentd tcp 0 0 0.0.0.0:27017 0.0.0.0:* LISTEN 11188/mongod
8、登录mongodb
[root@mbasic ~]# mongo MongoDB shell version: 3.2.6 connecting to: test Server has startup warnings: 2018-07-31T17:40:28.137+0800 I CONTROL [initandlisten] 2018-07-31T17:40:28.137+0800 I CONTROL [initandlisten] ** WARNING: You are running on a NUMA machine. 2018-07-31T17:40:28.137+0800 I CONTROL [initandlisten] ** We suggest launching mongod like this to avoid performance problems: 2018-07-31T17:40:28.137+0800 I CONTROL [initandlisten] ** numactl --interleave=all mongod [other options] 2018-07-31T17:40:28.138+0800 I CONTROL [initandlisten] 2018-07-31T17:40:28.138+0800 I CONTROL [initandlisten] ** WARNING: /sys/kernel/mm/transparent_hugepage/enabled is 'always'. 2018-07-31T17:40:28.138+0800 I CONTROL [initandlisten] ** We suggest setting it to 'never' 2018-07-31T17:40:28.138+0800 I CONTROL [initandlisten] 2018-07-31T17:40:28.138+0800 I CONTROL [initandlisten] ** WARNING: /sys/kernel/mm/transparent_hugepage/defrag is 'always'. 2018-07-31T17:40:28.138+0800 I CONTROL [initandlisten] ** We suggest setting it to 'never' 2018-07-31T17:40:28.138+0800 I CONTROL [initandlisten] 2018-07-31T17:40:28.138+0800 I CONTROL [initandlisten] ** WARNING: soft rlimits too low. rlimits set to 4096 processes, 64000 files. Number of processes should be at least 32000 : 0.5 times number of files. 2018-07-31T17:40:28.138+0800 I CONTROL [initandlisten]
从中间我们会看到好多警告,我们一一来进行修改一下。
1、禁用THP
自CentOS6版本开始引入了Transparent Huge Pages(THP),从CentOS7版本开始,该特性默认就会启用。尽管THP的本意是为提升内存的性能,不过某些数据库厂商还是建议直接关闭THP(比如说Oracle、MariaDB、MongoDB等),否则可能会导致性能出现下降。
首先检查THP的启用状态:
[root@mbasic ~]# cat /sys/kernel/mm/transparent_hugepage/defrag [always] madvise never [root@mbasic ~]# cat /sys/kernel/mm/transparent_hugepage/enabled [always] madvise never
这个状态就说明都是启用的。
我们这个时候当然可以逐个修改上述两文件,来禁用THP,
临时解决办法
记得重启mongodb
echo never >> /sys/kernel/mm/transparent_hugepage/enabled echo never >> /sys/kernel/mm/transparent_hugepage/defrag
永久生效
编辑
/etc/rc.d/rc.local文件:
增加下列内容:
if test -f /sys/kernel/mm/transparent_hugepage/enabled; then echo never > /sys/kernel/mm/transparent_hugepage/enabled fi if test -f /sys/kernel/mm/transparent_hugepage/defrag; then echo never > /sys/kernel/mm/transparent_hugepage/defrag fi
2、rlimits设定
echo "mongod soft nofile 64000" >> /etc/security/limits.conf echo "mongod hard nofile 64000" >> /etc/security/limits.conf echo "mongod soft nproc 32000" >> /etc/security/limits.conf echo "mongod hard nproc 32000" >> /etc/security/limits.conf
3、设定numactl
因为启动脚本里面已经判定好了,我们之前是最小化安装系统,所以我们只需要安装 numactl。
yum install numactl -y
操作完之后,重启mongodb即可。
二、官网下载安装包
1、软件包下载
MongoDB 提供了 linux 各发行版本 64 位的安装包,你可以在官网下载安装包。
下载地址:https://www.mongodb.com/download-center#community ,大家可以使用最新版本,也可以选择其他版本。
我这里选择的是和上面 rpm 安装一样的版本,3.2.6
wget http://downloads.mongodb.org/linux/mongodb-linux-x86_64-rhel70-3.2.6.tgz
2、解压到指定目录
tar xf mongodb-linux-x86_64-rhel70-3.2.6.tgz mv mongodb-linux-x86_64-rhel70-3.2.6 /usr/local/mongodb
3、配置环境变量
# vim /etc/profile.d/mongodb.sh export PATH=$PATH:/usr/local/mongodb/bin
source /etc/profile.d/mongodb.sh
4、创建数据库目录
mkdir -p /data/mongodb
/data/db 是 MongoDB 默认的启动的数据库路径,如果你的数据库目录不是/data/db,可以通过 --dbpath 来指定。
5、命令行启动数据库
mongod --dbpath=/data/mongodb
6、登录数据库
[root@datanode3 ~]# mongo MongoDB shell version: 3.2.6 connecting to: test Welcome to the MongoDB shell. For interactive help, type "help". For more comprehensive documentation, see http://docs.mongodb.org/ Questions? Try the support group http://groups.google.com/group/mongodb-user >
阅读更多推荐使用 rpm 包安装,很多脚本都已经给我们设定好了。
- MongoDB在Linux系统中的安装
- Linux系统下MongoDB的简单安装与基本操作
- alfresco 4.2.e(postgreSQL 数据库)在linux系统安装过程
- Linux系统下MongoDB的简单安装与基本操作
- 在linux系统下检查postgresql数据库安装,登录数据库及简单的查看数据库
- Linux系统 Redis数据库安装与部署使用
- linux系统中实现mongodb3.0.5数据库自动备份
- Linux下oracle11gR2系统安装到数据库建立配置及最后oracle的dmp文件导入一站式操作记录
- CentOS6.5 Linux安装mysql5.6数据库 针对64位系统
- Linux系统下安装数据库(笔记)
- mongoDB 数据库系统的安装和管理 安装调试
- 如何在centOS等一些linux系统下安装oracle sqldeveloper图形化数据库操作界面
- 在Linux系统上安装数据库监控程序Bugzilla的方法
- alfresco 4.2.f(mySQL 数据库)在linux系统安装过程
- Linux系统安装NoSQL(MongoDB和Redis)步骤及问题解决办法
- mongodb在Linux系统下安装的问题
- Linux+Informix后台数据库系统安装配置
- Linux+Informix后台数据库系统安装配置
- MongoDB在Linux系统中的安装
- Linux系统下virtuoso数据库安装与使用详解