#!/bin/bash

export lang=C
echo '#1.关闭本地的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=/opt/var/data/mongodb
logpath=/opt/var/logs/mongodb/alert_mongodb.log
#pidfilepath=/opt/var/data/mongodb/master.pid
#keyFile=/opt/var/data/mongodb/mongodb.key
directoryperdb=true
logappend=true
#replSet=RS1
bind_ip=0.0.0.0
port=27017
#auth=true
oplogSize=1000
fork=true
noprealloc=true
maxConns=20000
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:27017/admin --eval "db.shutdownServer()"
;;
status)
/opt/server/mongodb/bin/mongo 127.0.0.1:27017/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 <<EOF
use admin;
db.createUser(
  { user: "root",
    pwd: "root",
    roles: [ { role: "root", db: "admin" } ]
  }
);
db.auth("root","root");
use admin;
db.shutdownServer();
EOF

MongoDB一键安装的更多相关文章

  1. MongoDB一键安装(参数全部定制)

    cat  init_MongoDB.sh #!/bin/bash export lang=C export my_port=27019 export my_dbpath=/opt/var/data/m ...

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

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

  3. MongoDB一键式安装工具

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

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

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

  5. CentOS下一键安装Openstack

    CentOS下一键安装Openstack 系统环境:Oracle VirtualBox 4.38CentOS-6.5-x86_64-bin-DVD1.iso 安装前需要修改 /etc/hosts文件, ...

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

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

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

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

  8. CentOS6.x生产环境下一键安装mono+jexus的脚本,自启动,带服务,版本号自控

    转自: http://linuxdot.net/bbsfile-3784 1.支持哪些个平台?答:暂时仅支持CentOS6.x平台,7.x未测试,欢迎测试并到群里反馈给我(昵称:无聊人士) 2.一键安 ...

  9. 在centos 7.0上利用yum一键安装mono

    首先我们需要先配置一下yum源中mono的引用说明: 第一步: vi /etc/yum.repos.d/mono.repo 第二步:在刚打开的文件中编辑如下内容 [mono]name=monobase ...

随机推荐

  1. (4.8)mysql备份还原——binlog查看工具之show binlog的使用

    (4.8)mysql备份还原——binlog查看工具之mysqlbinlog及show binlog的使用 关键词:show binlog,mysql binlog查看,二进制文件查看,binlog查 ...

  2. mescroll在vue中的应用

    1.npm install --save mescroll.js 2. <template> <div> <!--全部--> <mescroll-vue re ...

  3. 【Go语言】基本的语法

    昨天花了几个小时的时间把Go的语法过了一遍,发现Go语言的语法核心和大部分编程语言的规则还是挺相近的,差别的就是不同的书写规范.还有就是前天安装VScode编译器那个插件把人弄得恶心了,总是安装不成功 ...

  4. python数据结构-如何统计序列中元素的频度

    如何统计序列中元素的频度 问题举例 如何找出随机序列[1, 5, 6, 5, 3, 2, 1, 0, 6, 1, 6]中出现频度最高的3个元素? 如何统计某篇英文文章中词频最高的5个单词? 将序列转换 ...

  5. python_字符串的格式化输出

    name = input("Name:")age = int(input("Age:")) input: 输入的内容默认为字符串格式job = input(&q ...

  6. 外网无法ip访问服务器解决方法 (原)

    示例ip:119.75.1.1      windows server示例 一.检查网络是否通畅     打开dos窗口(windows+r , 输入cmd回车  )输入命令: ping 119.75 ...

  7. 关于绕过域名(ip)校验的一些小知识

    这篇文章最开始只是想写一个关于绕过referer的方法,写着写着发现和ssrf以及url跳转的一些手法类似,于是把这两种也加上了 对referer做校验一般是对csrf进行防范的手段之一,但是很多时候 ...

  8. visual studio code常用插件

    1.auto close tag2.chinese language pack for visual studio code3.debugger for chrome4.docker5.html cs ...

  9. ReportViewe调用Reporting Services报表时报错Session超时

    序列化问题加上[Serializable]即可 /// <summary> /// 报表身份授权重写 /// </summary> [Serializable] public ...

  10. 每天一个Linux命令 10

    文件处理命令:ln命令名称:ln 命令英文原意:link语法: ln -s [原文件] [目标文件] -s 创建软连接功能描述:生成链接文件 #ln -s /etc/issue /tmp/issue. ...