[Mongodb] Tarball二进制包安装过程
一、缘由:
用在线安装的方式安装mongodb,诚然很方便。但文件过于分散,如果在单机多实例的情况下,就不方便管理。
对于数据库的管理,我习惯将所有数据(配置)文件放在一个地方,方便查找区分。
二、解决办法:
1、下载二进制包
curl -O https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-3.2.10.tgz
2、解压并程序更换目录
tar -zxvf mongodb-linux-x86_64-3.2.10.tgz
sudo mv mongodb-linux-x86_64-3.2.10 /usr/local/mongodb-3.2.10
sudo chown -R root:root /usr/local/mongodb-3.2.10
3、更改环境变量
为了可以直接在shell下敲mongo进入mongodb,需在/etc/profile中添加
export PATH=/usr/local/mongodb-3.2.10/bin:$PATH
使环境变量生效
source /etc/profile 或者
sudo bash -c "source /etc/profile"
4、添加mongod用户
因为不建议用root启动mongodb,这里用mongod用户启动
sudo groupadd mongod
sudo adduser mongod -g mongod
5、增加配置文件
在程序目录下新增mongodb配置文件mongod_27017.conf,具体内容如下:
# mongod.conf # for documentation of all options, see:
# http://docs.mongodb.org/manual/reference/configuration-options/ # where to write logging data.
systemLog:
destination: file
logAppend: true
path: /data/mongodb_data//mongod.log # Where and how to store data.
storage:
dbPath: /data/mongodb_data//data/
journal:
enabled: true
# engine:
# mmapv1:
# wiredTiger: # how the process runs
processManagement:
fork: true # fork and run in background
pidFilePath: /data/mongodb_data//mongod.pid # location of pidfile # network interfaces
net:
port:
bindIp: 127.0.0.1 # Listen to local interface only, comment to listen on all interfaces. #security:
# authorization: enabled #operationProfiling: replication:
replSetName: replica_test #sharding: ## Enterprise-Only Options #auditLog: #snmp:
6、创建数据文件目录
sudo mkdir -p /data/mongodb_data/27017/data
sudo chown -R mongod.mongod /data/mongodb_data/27017
7、启动mongodb
启动前需要先安装numactl,使用它启动mongodb,忽略numa架构带来的影响。
sudo yum install numactl -y
sudo su -l mongod -c "numactl --interleave=all mongod -f /usr/local/mongodb-3.2.10/mongod_27017.conf "
或者
sudo su - mongod
numactl --interleave=all mongod -f /usr/local/mongodb-3.2.10/mongod_27017.conf
三、附加内容:
1、进入mongodb后,会看到一些warning信息,需要我们调整一下相应的系统变量,将来才能避免踩到某些坑。
sudo bash -c "echo 0 > /proc/sys/vm/zone_reclaim_mode"
sudo bash -c "echo never > /sys/kernel/mm/transparent_hugepage/enabled"
sudo bash -c "echo never > /sys/kernel/mm/transparent_hugepage/defrag"
关于NUMA的Warnging,请用numactl --interleave=all mongod 启动;
关于soft rlimits too low,请调整ulimit -u 数值(用户拥有最大进程数)
2、Centos 6 安装Mongodb方法
1)添加一个yum仓库
sudo vim /etc/yum.repos.d/mongodb-org-3.2.repo
[mongodb-org-3.2]
name=MongoDB Repository
baseurl=https://repo.mongodb.org/yum/redhat/$releasever/mongodb-org/3.2/x86_64/
gpgcheck=
enabled=
gpgkey=https://www.mongodb.org/static/pgp/server-3.2.asc
2)安装mongodb
sudo yum install -y mongodb-org
3)启动mongodb
sudo service mongodb start
[Mongodb] Tarball二进制包安装过程的更多相关文章
- 二进制包安装MySQL数据库
1.1二进制包安装MySQL数据库 1.1.1 安装前准备(规范) [root@Mysql_server ~]# mkdir -p /home/zhurui/tools ##创建指定工具包存放路径 [ ...
- rpm包安装过程中依赖问题“libc.so.6 is needed by XXX”解决方法
rpm包安装过程中依赖问题"libc.so.6 is needed by XXX"解决方法 折腾了几天,终于搞定了CentOS上的Canon LBP2900打印机驱动.中间遇到了一 ...
- kubernetes实践之一:kubernetes二进制包安装
kubernetes二进制部署 1.环境规划 软件 版本 Linux操作系统 CentOS Linux release 7.6.1810 (Core) Kubernetes 1.9 Docker 18 ...
- MySQL5.7单实例二进制包安装方法
MySQL5.7单实例二进制包安装方法 一.环境 OS: CentOS release 6.9 (Final)MySQL: mysql-5.7.20-linux-glibc2.12-x86_64.ta ...
- ubuntu 可能的依赖包,安装过程中根据需要安装
/*************依赖包安装****************/下面是可能的依赖包,安装过程中根据需要安装 build-essential - libglib2.-dev libpng3 li ...
- Mysql 通用二进制包安装
通用二进制包安装 注意:这里有严格的平台问题: 使用时:centos5.5版本 (类似Windows下的绿色包) 下载(mirrors.sohu.com/mysql) 直接使用tar 解压到指 ...
- MySQL二进制包安装
mysql的安装有多种方法,这里就介绍一下二进制包安装. [root@node1 ~]# tar xvf mysql-5.7.27-linux-glibc2.12-x86_64.tar [root@n ...
- [Linux] 028 源码包安装过程
1. 安装准备 安装 C 语言编译器 下载源码包 如:apache 相应源码包下载地址 2. 安装注意事项 源代码保存位置:/usr/local/src 软件安装位置:/usr/local 如何确定安 ...
- MySQL二进制包安装及启动问题排查
环境部署:VMware10.0+CentOS6.9(64位)+MySQL5.7.19(64位)一.操作系统调整 # 更改时区 .先查看时区 [root@localhost ~]# date -R Tu ...
随机推荐
- LayaAir引擎——(五)
LayaAir引擎——关于地图详解 所需要的软件: LayaAirIDE1.0.2版本 在LayaAir引擎中与地图相关的类: 1.laya.map.TiledMap TiledMap类 地图以层 ...
- Ansible-Tower快速入门-6.查看tower的仪表板【翻译】
查看tower的仪表板 到这一步,我们已经可以在屏幕上看到tower的仪表板了,我们可以看到你目前"主机""资产清单"和"项目"的汇总信息, ...
- ubuntu 14.04安装右键打开终端功能
命令行运行,安装完成后需重启: sudo apt-get install nautilus-open-terminal
- 多表关联 update
UPDATE t_invests INNER JOIN t_user_coupons ON t_invests.user_coupon_id = t_user_coupons.id SET t_inv ...
- 线上mongodb数据库mLab使用总结
最近在CNode社区看到有人分享了免费的线上mongodb数据库(容量500M),今天去注册了一下,成功的将线下数据库替换掉了,现在就说一下它的使用和配置需要注意的地方: mLab是一款免费的在线mo ...
- DNS记录类型介绍(A记录、MX记录、NS记录等)
DNS A记录 NS记录 MX记录 CNAME记录 TXT记录 TTL值 PTR值 建站名词解释:DNS A记录 NS记录 MX记录 CNAME记录 TXT记录 TTL值 PTR值 泛域名 泛解析 域 ...
- (整理) Json语法规则
{ "staff":[ {"name":"haha1", "age":20}, {"name":&q ...
- markdown 语法测试
understanding the linux kernel 绪论 linux支持.硬件依赖.版本 基于微内核的方法 支持内核线程 多线程应用支持 抢占式内核 硬件依耐性 file descripto ...
- window.onload用法详解:
网页中的javaScript脚本代码往往需要在文档加载完成后才能够去执行,否则可能导致无法获取对象的情况,为了避免这种情况的发生,可以使用以下两种方式: 一.将脚本代码放在网页的底端,这样在运行脚本代 ...
- JAVA的单例模式与延时加载
延迟加载(lazy load)是(也称为懒加载),也叫延迟实例化,延迟初始化等,主要表达的思想就是:把对象的创建延迟到使用的时候创建,而不是对象实例化的时候创建.延迟加载机制是为了避免一些无谓的性能开 ...