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. python练习题-day16

    1.用map来处理字符串列表,把列表中所有人都变成sb,比方alex_sb name=["alex","wupeiqi","yuanhao" ...

  2. .so相关总结

    1.windows 中查看进程依赖那个dll,使用depends,linux使用ldd命令. 2.查看dll中有哪些导出函数windows使用dumpbin,linux使用objdump查看so中有哪 ...

  3. [js]js代码执行顺序/全局&私有变量/作用域链/闭包

    js代码执行顺序/全局&私有变量/作用域链 <script> /* 浏览器提供全局作用域(js执行环境)(栈内存) --> 1,预解释(仅带var的可以): 声明+定义 1. ...

  4. 利用StateListDrawable给button动态设置背景

    项目中,遇到相同样式的Button,只是stroke颜色不一样.为了实现一个,就得写两个shape文件,一个selector文件:多个还得重复写. 解决方法: 结合StateListDrawable给 ...

  5. 15.IEnumerable和IEnumerator

    先说IEnumerable,我们每天用的foreach你真的懂它吗? 阅读目录 自己实现迭代器 yield的使用 怎样高性能的随机取IEnumerable中的值 我们先思考几个问题: 为什么在fore ...

  6. #WEB安全基础 : HTTP协议 | 0x7 学会使用wireshark分析数据包

    wireshark是开源,免费,跨平台的抓包分析工具 我们可以通过wireshark学习HTTP报文和进行抓包分析,在CTF中的流量分析需要用到抓包 1.下载和安装 这是wireshark的官网 ht ...

  7. qt 安装包生成

    (Qt Installer Framework)程序简易打包教程 2017年06月19日 14:38:47 carman_风 阅读数:3559 标签: installerqt框架 更多 个人分类: 软 ...

  8. ltp-ddt inverted_return小trick

    ./runtest/ddt/i2c_readwrite # @name I2C write read test on slave device# @desc I2C write read test o ...

  9. dart字符串处理

    1.字符串创建(1)使用单引号,双引号创建字符串(2)使用三个引号或双引号创建多行字符串(3)使用r创建原始raw字符串(转义字符等特殊字符会输出出来,而不会自动被转义) (1)例如:String s ...

  10. 后端解决 微信H5支付 商户参数格式错误 方法

    问题如图: 后端解决方法: 在返回mweb_url 后不要直接访问这个链接,在当前页面用js window.location.href = mweb_url 这样跳转就可以了