Centos 安装MongoDB
<p>MongoDB是一个文档数据库,它具有可伸缩性和灵活性,您可以根据需要进行查询和索引。</p><p>MongoDB 是由C++语言编写的,是一个基于分布式文件存储的开源数据库系统。</p>
<p>在高负载的情况下,添加更多的节点,可以保证服务器性能。</p>
<p>MongoDB 旨在为WEB应用提供可扩展的高性能数据存储解决方案。</p>
<p>MongoDB 将数据存储为一个文档,数据结构由键值(key=>value)对组成。MongoDB 文档类似于 JSON 对象。字段值可以包含其他文档,数组及文档数组。</p>
<p>既然mongodb那么多优点,接下来就安装mongodb一探究竟。</p>
<p style="color: rgba(51, 102, 153, 1); font-size: 30px; font-weight: 400; letter-spacing: -0.5px; border-bottom: 1px dashed rgba(221, 221, 221, 1)">一,下载安装包</p>
<p>从mongodb官网上下载二进制安装包,下载地址是:https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-rhel70-3.6.17.tgz,下载下来之后进行解压,提取mongodb。</p>
<p style="background-color: rgba(5, 30, 48, 1); border-top: 1px solid rgba(40, 159, 244, 1); border-right: 1px solid rgba(40, 159, 244, 1); border-bottom: 1px solid rgba(40, 159, 244, 1); border-left: 4px solid rgba(40, 159, 244, 1); color: rgba(255, 255, 255, 1); font-family: monospace, monospace; line-height: 1.625; margin: 30px 0; overflow-x: auto; overflow-y: hidden; padding: 10px 10px 10px 18px; word-wrap: break-word"># wget https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-rhel70-3.6.17.tgz</p>
<p><img src="https://img2020.cnblogs.com/blog/566138/202004/566138-20200403212605920-283646817.jpg"></p>
<p>解压该压缩包,把数据提取到/opt/目录下。</p>
<p style="background-color: rgba(5, 30, 48, 1); border-top: 1px solid rgba(40, 159, 244, 1); border-right: 1px solid rgba(40, 159, 244, 1); border-bottom: 1px solid rgba(40, 159, 244, 1); border-left: 4px solid rgba(40, 159, 244, 1); color: rgba(255, 255, 255, 1); font-family: monospace, monospace; line-height: 1.625; margin: 30px 0; overflow-x: auto; overflow-y: hidden; padding: 10px 10px 10px 18px; word-wrap: break-word"># sudo tar -zvxf mongodb-linux-x86_64-rhel70-3.6.17.tgz -C /opt/</p>
<p><img src="https://img2020.cnblogs.com/blog/566138/202004/566138-20200403212755629-1482005546.jpg"></p>
<p>下面为了升级的方便,对该目录创建一个软连接。</p>
<p style="background-color: rgba(5, 30, 48, 1); border-top: 1px solid rgba(40, 159, 244, 1); border-right: 1px solid rgba(40, 159, 244, 1); border-bottom: 1px solid rgba(40, 159, 244, 1); border-left: 4px solid rgba(40, 159, 244, 1); color: rgba(255, 255, 255, 1); font-family: monospace, monospace; line-height: 1.625; margin: 30px 0; overflow-x: auto; overflow-y: hidden; padding: 10px 10px 10px 18px; word-wrap: break-word"># sudo ln -s /opt/mongodb-linux-x86_64-rhel70-3.6.17 /opt/mongodb</p>
<p><img src="https://img2020.cnblogs.com/blog/566138/202004/566138-20200403212929429-1557062313.jpg"></p>
<p>下面进入到mongodb目录下,创建一个data目录。</p>
<p><img src="https://img2020.cnblogs.com/blog/566138/202004/566138-20200403213223043-2032986823.jpg"></p>
<p style="color: rgba(51, 102, 153, 1); font-size: 30px; font-weight: 400; letter-spacing: -0.5px; border-bottom: 1px dashed rgba(221, 221, 221, 1)">二,创建环境变量</p>
<p>为了确保您能够从您的shell访问mongod,您必须在 <code>~/.bashrc </code>中添加以下内容。</p>
<p style="background-color: rgba(5, 30, 48, 1); border-top: 1px solid rgba(40, 159, 244, 1); border-right: 1px solid rgba(40, 159, 244, 1); border-bottom: 1px solid rgba(40, 159, 244, 1); border-left: 4px solid rgba(40, 159, 244, 1); color: rgba(255, 255, 255, 1); font-family: monospace, monospace; line-height: 1.625; margin: 30px 0; overflow-x: auto; overflow-y: hidden; padding: 10px 10px 10px 18px; word-wrap: break-word"># sudo vi ~/.bashrc</p>
<p>在文件末尾添加以下内容并保存。</p>
<p style="background-color: rgba(5, 30, 48, 1); border-top: 1px solid rgba(40, 159, 244, 1); border-right: 1px solid rgba(40, 159, 244, 1); border-bottom: 1px solid rgba(40, 159, 244, 1); border-left: 4px solid rgba(40, 159, 244, 1); color: rgba(255, 255, 255, 1); font-family: monospace, monospace; line-height: 1.625; margin: 30px 0; overflow-x: auto; overflow-y: hidden; padding: 10px 10px 10px 18px; word-wrap: break-word">export PATH=/opt/mongodb/bin:$PATH</p>
<p><img src="https://img2020.cnblogs.com/blog/566138/202004/566138-20200403214952392-887712110.jpg"></p>
<p>接着执行以下命令让其配置生效。</p>
<p style="background-color: rgba(5, 30, 48, 1); border-top: 1px solid rgba(40, 159, 244, 1); border-right: 1px solid rgba(40, 159, 244, 1); border-bottom: 1px solid rgba(40, 159, 244, 1); border-left: 4px solid rgba(40, 159, 244, 1); color: rgba(255, 255, 255, 1); font-family: monospace, monospace; line-height: 1.625; margin: 30px 0; overflow-x: auto; overflow-y: hidden; padding: 10px 10px 10px 18px; word-wrap: break-word"># source ~/.bashrc</p>
<p><img src="https://img2020.cnblogs.com/blog/566138/202004/566138-20200403215413647-1699084341.jpg"></p>
<p style="color: rgba(51, 102, 153, 1); font-size: 30px; font-weight: 400; letter-spacing: -0.5px; border-bottom: 1px dashed rgba(221, 221, 221, 1)">三,创建启动服务</p>
<p>使用下面的命令创建脚本文件。</p>
<p style="background-color: rgba(5, 30, 48, 1); border-top: 1px solid rgba(40, 159, 244, 1); border-right: 1px solid rgba(40, 159, 244, 1); border-bottom: 1px solid rgba(40, 159, 244, 1); border-left: 4px solid rgba(40, 159, 244, 1); color: rgba(255, 255, 255, 1); font-family: monospace, monospace; line-height: 1.625; margin: 30px 0; overflow-x: auto; overflow-y: hidden; padding: 10px 10px 10px 18px; word-wrap: break-word">$ sudo vi /etc/init.d/mongod</p>
<p>现在,复制以下代码并使用文本编辑器修改DBPATH和OPT变量:</p>
<div class="cnblogs_Highlighter">
<pre class="brush:bash;gutter:true;">#!/bin/sh
# chkconfig: 35 85 15
# description: Mongo is a scalable, document-oriented database.
# processname: mongod
# config: /etc/mongod.conf
# pidfile: /var/run/mongo/mongo.pid
. /etc/rc.d/init.d/functions
MONGOHOME="/home/ec2-user/mongodb"
CONFIGFILE="/etc/mongod.conf"
DBPATH="/home/ec2-user/<data-path>"
COMMAND="$MONGOHOME/bin/mongod"
OPT="--config $CONFIGFILE "
mongod=${MONGOD-$COMMAND}
usage() {
echo "Usage: $0 {start|stop|restart|status}"
exit 0
}
if [ $# != 1 ]; then
usage
fi
start()
{
echo -n $"Starting mongod: "
daemon $COMMAND $OPT
RETVAL=$?
echo
[ $RETVAL -eq 0 ] && sudo touch /var/lock/subsys/mongod
}
stop()
{
echo -n $"Stopping mongod: "
killproc -p "$DBPATH"/mongod.lock -d 300 "$COMMAND"
RETVAL=$?
echo
[ $RETVAL -eq 0 ] && sudo rm -f /var/lock/subsys/mongod
}
case "$1" in
start)
start
;;
stop)
stop
;;
restart)
stop
start
;;
status)
status $mongod
RETVAL=$?
;;
* )
usage
;;
esac
</pre>
</div>
<p> 接着修改执行权限</p>
<div class="cnblogs_code">
<pre>$ chmod +x/etc/init.d/mongod</pre>
</div>
<p>在配置文件中粘贴以下代码(更改data-path、log-path和log-file)。</p>
<div class="cnblogs_Highlighter">
<pre class="brush:bash;gutter:true;"># mongo.conf
dbpath = /home/ec2-user/<data-path>
#port = 27017
#
#where to log
logpath = /home/ec2-user/<log-path>/<log-file>.log
logappend = true
#rest = true
verbose = true
## for log , more verbose
##vvvvv = true
#
##profile = 2
##slowms = 10
# fork and run in background
fork = true
# Disables write-ahead journaling
# nojournal = true
# Enables periodic logging of CPU utilization and I/O wait
#cpu = true
# Turn on/off security.Off is currently the default
#noauth = true
#auth = true
# Verbose logging output.
#verbose = true
# Inspect all client data for validity on receipt (useful for
# developing drivers)
#objcheck = true
# Enable db quota management
#quota = true
# Set oplogging level where n is
# 0=off (default)
# 1=W
# 2=R
# 3=both
# 7=W+some reads
#oplog = 0
# Ignore query hints
#nohints = true
# Disable the HTTP interface (Defaults to localhost:27018).
#nohttpinterface = true
# Turns off server-side scripting.This will result in greatly limited
# functionality
#noscripting = true
# Turns off table scans.Any query that would do a table scan fails.
#notablescan = true
# Disable data file preallocation.
#noprealloc = true
# Specify .ns file size for new databases.
# nssize = <size>
# Accout token for Mongo monitoring server.
#mms-token = <token>
# Server name for Mongo monitoring server.
#mms-name = <server-name>
# Ping interval for Mongo monitoring server.
#mms-interval = <seconds>
# Replication Options
# in replicated mongo databases, specify here whether this is a slave or master
#slave = true
#source = master.example.com
# Slave only: specify a single database to replicate
#only = master.example.com
# or
#master = true
#source = slave.example.com
</pre>
</div>
<p> 接下来进行检查配置。Chkconfig命令用于设置、查看或更改配置为在系统启动期间自动启动的服务。现在让我们添加mongod的信息,以便在服务器重新启动时启动服务。</p>
<div class="cnblogs_Highlighter">
<pre class="brush:bash;gutter:true;">$ chkconfig --add mongod
</pre>
</div>
<p style="color: rgba(51, 102, 153, 1); font-size: 30px; font-weight: 400; letter-spacing: -0.5px; border-bottom: 1px dashed rgba(221, 221, 221, 1)">四,启动mongodb</p>
<p>通过以下命令来进行启动mongodb。</p>
<div class="cnblogs_Highlighter">
<pre class="brush:bash;gutter:true;">$ service mongod {start|stop|restart|status}
</pre>
</div>
<p>启动服务:</p>
<div class="cnblogs_Highlighter">
<pre class="brush:bash;gutter:true;">$ service mongod start
</pre>
</div>
<p> 启动成功之后通过简单地输入Mongo来使用Mongo shell进行连接。检查你的版本:</p>
<p>输入以下命令:</p>
<div class="cnblogs_Highlighter">
<pre class="brush:bash;gutter:true;">> version()
</pre>
</div>
<p> </p>
<p> </p>
</div>
<div id="MySignature" role="contentinfo">
<div style="text-align: center"><img id="ViewPicture1_GalleryImage" src="https://files.cnblogs.com/files/Hackerman/%E9%BB%98%E8%AE%A4%E6%A0%87%E9%A2%98_%E6%A8%AA%E7%89%88%E4%BA%8C%E7%BB%B4%E7%A0%81_2020.gif" alt="微信公众号" style="border-width: 0px;">
</div>
<div id="MySignature" style="display: block; border: solid 1px #E5E5E5; padding: 10px; background: #FFFEFE url("https://images.cnblogs.com/cnblogs_com/Hackerman/617610/o_o_info.png") no-repeat scroll 1% 50%; padding-left: 60px">作者:Hackerman<br>
出处:http://www.cnblogs.com/Hackerman/ <br>
<div class="cuscomment" style="border: #c0c0c0 1px dashed; font-size: 9pt; line-height: 20pt; padding-left: 10px; padding-top: 5px; padding-right: 10px; padding-bottom: 10px; margin-top: 15px; margin-bottom: 15px">本文版权归作者和博客园共有,欢迎转载。但必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。</div></div><br><br>
来源:https://www.cnblogs.com/Hackerman/p/12629883.html
頁:
[1]