cat  init_MongoDB.sh

#!/bin/bash

export lang=C

export my_port=27019

export my_dbpath=/opt/var/data/mongodb #数据存放目录

export my_logpath=/opt/var/logs/mongodb  #日志存放目录

export my_keyFile=mongodb.key  #集群中节点通信要用到keyfile

export my_pidfilepath=master.pid  #进程文件,方便停止mongodb

export my_directoryperdb=true  #为每一个数据库按照数据库名建立独立目录存放

export my_logappend=true  #以追加的方式记录日志

export my_replSet=RS1 #replica set的名字

export my_bind_ip=0.0.0.0 #mongodb所绑定的ip地址

export my_port=27019 #mongodb进程所使用的端口号,默认为27017

export my_oplogSize=1000  #mongodb操作日志文件的最大大小。单位为Mb,默认为硬盘剩余空间的5%

export my_fork=true #是否后台方式运行进程

export my_maxConns=20000 #最大连接数

echo '#1.关闭本地的MongoDB'

ps -ef |grep mongodb

#service mongodb stop

echo '#2.清空本地MongoDB的安装文件'

rm -rf /opt/server/*

rm -rf /opt/var/data/*

#rm -rf /opt/var/log/

echo '#3.创建MongoDB的介质存放目录、安装目录'

mkdir -p /opt/soft/

mkdir -p /opt/server/

mkdir -p /opt/var/data/mongodb/

mkdir -p /opt/var/logs/mongodb/

echo '#4.拷贝安装介质'

mv /softwares/mongodb-linux-x86_64-rhel62-4.0.0.tgz /opt/soft/

cd /opt/soft/

ls

echo '#5.解包该介质'

tar  zxvf mongodb-linux-x86_64-rhel62-4.0.0.tgz

echo '#6.把解包文件移动至安装目录'

mv mongodb-linux-x86_64-rhel62-4.0.0 /opt/server/mongodb

echo '#7.修改并刷新本地的profile文件'

cat <<EOF >/etc/profile

export PATH=$PATH:/opt/server/mongodb/bin

EOF

source /etc/profile

echo '#8.生成本地的key file文件,授权600'

openssl rand -base64 100 > /opt/var/data/mongodb/mongodb.key

chmod 600 /opt/var/data/mongodb/mongodb.key

echo '#9.修改MongoDB的初始化参数文件'

dd if=/dev/zero of=/opt/server/mongodb/mongodb.conf count=0

cat   <<EOF > /opt/server/mongodb/mongodb.conf

dbpath=$my_dbpath

logpath=$my_logpath/alert_mongodb.log

pidfilepath=$my_dbpath/$my_pidfilepath

keyFile=$my_dbpath/$my_keyFile

directoryperdb=$my_directoryperdb

logappend=$my_logappend

#replSet=RS1

bind_ip=$my_bind_ip

port=$my_port

#auth=true

oplogSize=$my_oplogSize

fork=$my_fork

noprealloc=$my_noprealloc

maxConns=$my_maxConns

EOF

echo '#10.修改MongoDB的启动脚本,并授于 执行的权限'

cat   <<EOF > /etc/rc.d/init.d/mongodb

#!/bin/sh

# chkconfig: - 64 36

# description:mongod

case \$1 in

start)

/opt/server/mongodb/bin/mongod -f /opt/server/mongodb/mongodb.conf

;;

stop)

/opt/server/mongodb/bin/mongo 127.0.0.1:$my_port/admin --eval "db.shutdownServer()"

;;

status)

/opt/server/mongodb/bin/mongo 127.0.0.1:$my_port/admin --eval "db.stats()"

;;

esac

EOF

chmod +x /etc/rc.d/init.d/mongodb

echo '#11.启动MongoDB'

service mongodb start

#about to fork child process, waiting until server is ready for connections.

#forked process: 2556

#child process started successfully, parent exiting

mongo 127.0.0.1:$my_port <<EOF

use admin;

db.createUser(

{ user: "root",

pwd: "root",

roles: [ { role: "root", db: "admin" } ]

}

);

db.auth("root","root");

show dbs;

show users;

EOF

ps -ef |grep mongodb

#db.shutdownServer();

MongoDB一键安装(参数全部定制)的更多相关文章

  1. MongoDB一键安装(定制端口)

    #!/bin/bash export lang=Cexport my_port=27019echo '#1.关闭本地的MongoDB'#service mongodb stopecho '#2.清空本 ...

  2. MongoDB一键安装

    #!/bin/bash export lang=Cecho '#1.关闭本地的MongoDB'#service mongodb stopecho '#2.清空本地MongoDB的安装文件'rm -rf ...

  3. Linux(CentOS、Ububtu)一键安装Openstack及其它参考文档汇总

    原文链接  http://www.aboutyun.com/thread-10920-1-1.html openstack相关资料 CentOS下一键安装Openstack  http://blog. ...

  4. 如何一步步使用国内yum源一键安装openstack-ocata版本基于centos7

    写在前面的话,在网上看了一个国外的一键安装视频,我也照着做,结果出现很多错误,现在把坑解决了,照着做肯定能安装成功的 环境 virtualhost 下的centos7 配置 双网卡 一个10网段,na ...

  5. MongoDB下载安装与简单增删改查

    Windows下MongoDB的安装和配置.启动和停止 下载地址:MongoDB的官方下载网址是:https://www.mongodb.org/downloads 安装步骤1. 点击下载的mongo ...

  6. Linux下MongoDB服务安装

    Linux下MongoDB服务安装 MongoDB是一个基于分布式文件存储的数据库.由C++语言编写.旨在为WEB应用提供可扩展的高性能数据存储解决方案.MongoDB是一个介于关系数据库和非关系数据 ...

  7. MongoDB一键式安装工具

    一. 需求 不知道有多少人会像我一样,会把MongoDB用在客户端应用上,不过我感觉应该非常少.于是,我就希望能在客户机器上尽可能简单方便的安装MongoDB.所以以下是我的一些取舍: 1. 我只使用 ...

  8. mongoDB windows安装

    http://www.mongodb.org/ mongodb的官方文档. http://www.cnblogs.com/lipan/archive/2011/03/08/1966463.html  ...

  9. 禅道Linux一键安装版

    禅道Linux一键安装版 Linux一键安装包内置了apache, php, mysql这些应用程序,只需要下载解压缩即可运行禅道.从7.3版本开始,linux一键安装包分为32位和64位两个包,大家 ...

随机推荐

  1. 详解FPGA中的建立时间与保持时间

    概念对于一个数字系统而言,建立时间和保持时间可以说是基础中的基础,这两个概念就像是数字电路的地基,整个系统的稳定性绝大部分都取决于是否满足建立时间和保持时间.但是对于绝大部分包括我在内的初学者来说,建 ...

  2. nio例子

    跟传统io相比,nio会支持更大的并发量 nio去除了传统io的连接阻塞,和读写阻塞 服务器端 客户端 nio模型 传统io nio

  3. [js]函数的上级作用域,他的上级作用域就是谁,跟函数在哪执行的没什么关系.

    函数的上级作用域,他的上级作用域就是谁,跟函数在哪执行的没什么关系. <script> //如何查找上级作用域? //看函数在哪个作用域下定义的,他的上级作用域就是谁. 跟函数在哪执行的没 ...

  4. Python学习之高级数组(一)

    1.Python基础学习之高级数组(一) 1.1视图:就是与较大数组共享相同数据的较小数组.Numpy包提供数据视图的概念是为了精确地控制内存的使用方式.  数组视图.切片视图.转置和重塑视图等 数组 ...

  5. Python基础(十三) 为什么说python多线程没有真正实现多现程

    Python中的多线程没有真正实现多现程! 为什么这么说,我们了解一个概念,全局解释器锁(GIL). Python代码的执行由Python虚拟机(解释器)来控制. Python在设计之初就考虑要在主循 ...

  6. IO流的总结(二)

    缓冲字节流: 我们先说一下缓存区的概念: 缓冲区就好比一辆车,一车一车的把数据拉走,这样就效率快多了 按照流的方向分类: 写入数据到流中,字节缓冲输出流 BufferedOutputStream 读取 ...

  7. 第一章 JQuery概述

    1.JQuery的作用:访问和操作DOM元素控制页面样式对页面事件进行处理扩展新的JQuery插件与Ajax技术完美结合注:JQuery能完成的效果js都能完成,但是JQuery的开发效率更高,代码更 ...

  8. 2014年西安区域赛的几道水题(A. F. K)

    A . 问一组数能否全部被3整除 K. S1 = A, S2 = B, Si = |Si-1  -  Si-2|; 一直循环问, 出现了多少不同的数: 多模拟几组数, 可以发现和辗转相除法有很大关系 ...

  9. C# 调用C++的dll 那些事

    之前从来没搞过C++,最近被安排的任务需要调用C++的接口,对于一个没用过 Dependency 的小白来说,原本以为像平时的Http接口那样,协议,端口一定义,方法参数一写就没事,结果踩了无数的坑. ...

  10. 专题8:javascript中事件

    一.事件流 1.1 事件冒泡 冒泡型事件:事件按照从最特定的事件目标到最不特定的事件目标的顺序逐一触发: 注意:各个浏览器在处理<html>标记级别的事件时顺序有出入,因此无论任何情况,都 ...