单片mongoDB

MongoDB:

https://docs.mongodb.com/manual/tutorial/install-mongodb-on-linux/#install-mongodb-community-edition

一、下载安装

# curl -O https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-rhel62-3.2.9.tgz

# wget https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-rhel62-3.2.9.tgz

# tar -xf mongodb-linux-x86_64-rhel62-3.2.9.tgz -C /opt/

# ln -s /opt/mongodb-linux-x86_64-rhel62-3.2.9/ /opt/mongodb

# cat >>/etc/profile <<HERE

PATH=$PATH:/opt/mongodb/bin

HERE

# source /etc/profile

# mkdir -p /opt/mongodb/{log,db,conf}

二;启动

# mongod --fork --httpinterface --rest --jsonp --setParameter enableLocalhostAuthBypass=0 --pidfilepath /opt/mongodb/mongod.pid --dbpath /opt/mongodb/db --logpath /opt/mongodb/log/mongod.log  --logappend --logRotate rename --timeStampFormat ctime

/** 可以加入/etc/rc.d/rc.local,以随操作系统重启时自启动 **/

/** 部分参数解释 **/

--fork #后台daemon运行

--bind_ip #监听IP地址列表,以逗号分隔

--port #监听端口,默认27017

--setParameter enableLocalhostAuthBypass=0 #所有接口都需要认证

--pidfilepath #pid文件

--dbpath #db存放路径

--logpath #日志文件

--config #配置文件

--auth #启用认证

--httpinterface #启用web接口

--rest #rest api

--jsonp #json api

/** 如果闲命令参数太多,可以指定配置文件 **/

WARNING

Ensure that the HTTP status interface, the REST API, and the JSON API are all disabled in production environments to prevent potential data exposure and vulnerability to attackers

[email protected]:~#netstat -tunlp|grep mongod

tcp        0      0 0.0.0.0:28017               0.0.0.0:*                   LISTEN      11896/mongod

tcp        0      0 0.0.0.0:27017               0.0.0.0:*                   LISTEN      11896/mongod

默认监听端口,db端口为27017, web端口为28017

# vi /etc/sysconfig/iptables

-A INPUT -p tcp -m state --state NEW -m tcp --dport 27017 -j ACCEPT

-A INPUT -p tcp -m state --state NEW -m tcp --dport 28017 -j ACCEPT

三、关闭

# mongod --shutdown --dbpath /opt/mongod/db

还可以

命令行模式执行shutdown

# use admin

db.shutdownServer()

mongo admin --port 27017 --eval "db.shutdownServer()"

四、配置文件

默认的二进制包没有配置文件模板,可以从源码包内提取

# cp -rp /usr/local/src/mongodb-src-r3.2.9/rpm/mongod.conf /opt/mongodb/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

logRotate: rename

timeStampFormat: ctime

path: /opt/mongodb/log/mongod.log

# Where and how to store data.

storage:

dbPath: /opt/mongodb/db

journal:

enabled: true

#  engine:

#  mmapv1:

#  wiredTiger:

# how the process runs

processManagement:

fork: true  # fork and run in background

pidFilePath: /opt/mongodb/mongod.pid  # location of pidfile

# network interfaces

net:

port: 27017

#bindIp: 127.0.0.1  # Listen to local interface only, comment to listen on all interfaces.

http:

enabled: true

JSONPEnabled: true

RESTInterfaceEnabled: true

setParameter:

enableLocalhostAuthBypass: false

#security:

#operationProfiling:

#replication:

#sharding:

## Enterprise-Only Options

#auditLog:

#snmp:

更多参数和解释请参看官方文档

五、 init管控启动脚本

# useradd -s /sbin/nologin -r mongod

# chown -R mongod: /opt/mongodb-linux-x86_64-rhel62-3.2.9

# cp -rp/usr/local/src/mongodb-src-r3.2.9/rpm/init.d-mongod /etc/init.d/mongod

 /** 模板仍可以从 源码包里面取  **/

# chmod +x /etc/init.d/mongod

# sed -i ‘/CONFIGFILE=/i MONGOD="/opt/mongodb/bin/mongod"‘ /etc/init.d/mongod

# sed -i ‘/CONFIGFILE=/s:/etc/mongod.conf:/opt/mongodb/conf/mongod.conf:g‘ /etc/init.d/mongod

六、修改内核参数

# cat >>/etc/rc.d/rc.local <<HERE

# echo never > /sys/kernel/mm/transparent_hugepage/enabled

# echo never > /sys/kernel/mm/transparent_hugepage/defrag

# HERE

七,重启服务访问;

# service mongod restart

http://IP:28017/

时间: 2024-10-06 19:03:56

单片mongoDB的相关文章

JAVA单例MongoDB工具类

经常对MongoDB进行一些常用操作,为了方便起见将这些常用操作合并到一个工具类中,方便自己开发使用. 没用Spring Data.Morphia等框架是为了减少学习.维护成本,另外自己直接JDBC方式的话可以更方便的控制操作.为自己以后的积累留一个脚印. 代码如下: package utils; import java.util.ArrayList; import java.util.List; import org.apache.commons.configuration.Composite

mongodb 单节点集群配置 (开发环境)

最近项目会用到mongodb的oplog触发业务流程,开发时的debug很不方便.所以在本地创建一个单台mongodb 集群进行开发debug. 大概:mongodb可以产生oplog的部署方式应该是两种,一种是replica set ,一种是shard;项目中使用的的shard,所以参照文档本地部署了单节点shard集群-只为debug. 根据文档整理的内容包含三部分: 1.配置文件 配置文件有三个,分别是config.conf,shard.conf,mongos.conf;一下是内容 1 #

mongodb高可用集群01---单实例、主从模式、一主多从模式

本人根据此文章进行学习:http://blog.jobbole.com/72610/ 会不断更新内容主要分为四大模块: mongodb各种方式的部署 常用使用[工作不用就没必要学了,精力有限] 性能优化 故障排除 很多会和网上资料一样,主要是自己学习不断梳理资料,追求:提及精华 单实例: 1)建立mongodb测试文件 #存放整个mongodb文件 mkdri-p /data/mongodbtest/single #mongodb数据文件 mkdir /data/mongodbtest/data

java 对mongodb的操作

java 对mongodb的操作 1.1连单台mongodb Mongo mg = newMongo();//默认连本机127.0.0.1  端口为27017 Mongo mg = newMongo(ip);//可以指定ip 端口默认为27017 Mongo mg = newMongo(ip,port);//也可以指定ip及端口号 1.2连双台mongodb //ip为主机ip地址,port为端口号,dataBaseName相当于数据库名 DBAddress left = new DBAddre

Replica Set副本集方式的mongodb集群搭建

1.环境: 单台服务器上开启四个mongodb实例来实现mongodb的Replica Set副本集方式的集群搭建 2.配置文件: master主实例配置文件: [[email protected] ~]# cat /usr/local/mongodb/mongod.cnf logpath=/data/mongodb-master/logs/mongodb.log logappend = true #fork and run in background fork = true port = 27

使用YCSB测试MongoDB的微分片性能

MongoDB的库级锁 MongoDB是目前最流行的NoSQL数据库,以其自然的文档型数据结构,灵活的数据模式以及简单易用的水平扩展能力而获得了很多开发人员的青睐. 但是金无足赤人无完人,MongoDB不是没有它的一些弱点,比如说它的库级锁就是人们经常抱怨的一个性能瓶颈.简单来说MongoDB的库级锁就是针对某一个数据库的所有写操作,必须在获得这个数据库仅有的一个互斥锁情况下才能进行.这个听上去很糟糕,但实际上由于一个写操作只是针对于内存数据更新的那一刹那保留锁,所以每个写锁的占用时间通常是在纳

搭建高可用mongodb集群(一)——配置mongodb

搭建高可用mongodb集群(一)--配置mongodb 在大数据的时代,传统的关系型数据库要能更高的服务必须要解决高并发读写.海量数据高效存储.高可扩展性和高可用性这些难题.不过就是因为这些问题Nosql诞生了. NOSQL有这些优势: 大数据量,可以通过廉价服务器存储大量的数据,轻松摆脱传统mysql单表存储量级限制. 高扩展性,Nosql去掉了关系数据库的关系型特性,很容易横向扩展,摆脱了以往老是纵向扩展的诟病. 高性能,Nosql通过简单的key-value方式获取数据,非常快速.还有N

MongoDB如何设置权限(类似关系型数据库的用户名和密码)

MongoDB 缺省是没有设置鉴权的,业界大部分使用 MongoDB 的项目也没有设置访问权限.这就意味着只要知道 MongoDB 服务器的端口,任何能访问到这台服务器的人都可以查询和操作 MongoDB 数据库的内容.在一些项目当中,这种使用方式会被看成是一种安全漏洞. 本文介绍如何在单台 MongoDB 服务器上设置鉴权.设置完后,MongoDB 客户端必须用正确的用户名和密码登录,才能在指定的数据库中操作. 首先介绍下 MongoDB 的用户和权限.每个数据库都有自己的用户,创建用户的命令

【转】搭建高可用mongodb集群(一)——配置mongodb

在大数据的时代,传统的关系型数据库要能更高的服务必须要解决高并发读写.海量数据高效存储.高可扩展性和高可用性这些难题.不过就是因为这些问题Nosql诞生了. NOSQL有这些优势: 大数据量,可以通过廉价服务器存储大量的数据,轻松摆脱传统mysql单表存储量级限制. 高扩展性,Nosql去掉了关系数据库的关系型特性,很容易横向扩展,摆脱了以往老是纵向扩展的诟病. 高性能,Nosql通过简单的key-value方式获取数据,非常快速.还有NoSQL的Cache是记录级的,是一种细粒度的Cache,