阿里云服务器部署mongodb
<p>在阿里云上买了个服务器,部署mongodb遇到一些坑,解决办法也是从网上搜集而来,把零零碎碎的整理记录一下。</p><p>服务器是:Alibaba Cloud Linux</p>
<h2 id="下载安装">下载安装</h2>
<p>mongodb官网下载实在是太慢,可以从阿里镜像安装:阿里MongoDb镜像<br>
<img src="https://img-blog.csdnimg.cn/c98d66ee7aea4a34938fe6d9a31fbb9d.png?x-oss-process=image/watermark,type_ZHJvaWRzYW5zZmFsbGJhY2s,shadow_50,text_Q1NETiBAeXV0YW5nbWVuZw==,size_20,color_FFFFFF,t_70,g_se,x_16"></p>
<p><strong>使用yum安装</strong></p>
<ul>
<li>在/etc/yum.repos.d目录下添加mongodb-org.repo文件<pre><code class="language-bash">cd /etc/yum.repos.d
vim mongodb-org.repo
name=MongoDB Repository
baseurl=http://mirrors.aliyun.com/mongodb/yum/redhat/7Server/mongodb-org/4.0/x86_64/
gpgcheck=0
enabled=1
</code></pre>
vim命令:是编辑(新建)文件的命令,退出编辑的时候,按<code>esc</code>,然后输入 <code>:wq</code>退出报存。如果对linux命令不熟,用 Xftp 等工具直接上传也可以。<br>
baseurl:在阿里镜像中,点击<code>下载地址</code>后,选择的mongodb的版本的链接,根据选择的版本不同而不同,其他的不用变。</li>
<li>用yum安装<pre><code class="language-bash">yum -y install mongodb-org
</code></pre>
yum:linux下载包的命令,从上面添加的 .repo 文件中的 baseurl地址开始下载。<code>-y</code>是为了免去安装的确认操作。</li>
</ul>
<h2 id="配置">配置</h2>
<p>安装完成了过后,找到配置mongodb的配置文件</p>
<pre><code class="language-bash">rpm -qla | grep mongod.conf
</code></pre>
<p><img src="https://img-blog.csdnimg.cn/1aa908590e6b48da83e21e3495c220b9.png"></p>
<ul>
<li>修改配置文件<pre><code class="language-bash">vim /etc/mongod.conf
# mongod.conf
systemLog:
destination: file
logAppend: true
path: /var/log/mongodb/mongod.log # 日志文件目录
# Where and how to store data.
storage:
dbPath: /var/lib/mongo # 数据目录
journal:
enabled: true
#engine:
#mmapv1:
#wiredTiger:
# how the process runs
processManagement:
fork: true# fork and run in background
pidFilePath: /var/run/mongodb/mongod.pid# location of pidfile
timeZoneInfo: /usr/share/zoneinfo
# network interfaces
net:
port: 27017 #端口
# 修改ip
bindIp: 0.0.0.0# 这里默认是127.0.0.1,要改成0.0.0.0
</code></pre>
主要修改点:bindIp值改为 0.0.0.0,这样可以外网访问<br>
如果对linux的指令不熟悉的,可以直接在 Xftp的工具里面选中文件,右键有编辑操作</li>
</ul>
<h2 id="运行">运行</h2>
<ul>
<li>
<p>在<code>/etc/init.d</code>文件夹中添加开机启动脚本<code>mongod</code></p>
<pre><code class="language-bash">cd /etc/init.d
vim mongod
EXEC=/usr/bin/mongod
CONF=/etc/mongod.conf
LOCKFILE=/var/lock/subsys/mongod
RETVAL=0
case "$1" in
start)
echo -n $"Starting mongod: "
$EXEC -f $CONF
RETVAL=$?
echo
[ $RETVAL -eq 0 ] && touch $LOCKFILE
;;
stop)
echo -n $"Stopping mongod: "
$EXEC -f $CONF --shutdown
RETVAL=$?
echo
[ $RETVAL -eq 0 ] && rm -f $LOCKFILE
;;
restart)
${0} stop
${0} start
;;
*)
echo "Usage: /etc/init.d/mongod {start|stop|restart}" >&2
exit 1
esac
</code></pre>
</li>
<li>
<p>运行权限</p>
<pre><code class="language-bash"># 获取文件权限
chmod +x /etc/init.d/mongodb
</code></pre>
</li>
<li>
<p>启动</p>
<pre><code class="language-bash">service mongod start
</code></pre>
</li>
<li>
<p>停止</p>
<pre><code class="language-bash">service mongod stop
</code></pre>
</li>
<li>
<p>重启</p>
<pre><code class="language-bash">service mongod restart
</code></pre>
</li>
<li>
<p>卸载</p>
<pre><code class="language-bash"># 停止服务
service mongod stop
# 删除安装的包
yum erase $(rpm -qa | grep mongodb-org)
# 删除数据和日志
rm -rf /var/log/mongodb
rm -rf /var/lib/mongo
</code></pre>
</li>
</ul>
<h2 id="验证">验证</h2>
<ul>
<li>开启端口<br>
mongodb默认端口为:27017,在配置文件<code>/etc/mongod.conf</code>里可以查看<br>
在阿里云后台,防火墙打开端口 <img src="https://img-blog.csdnimg.cn/0740a75415134822940166b3c2b6d846.png?x-oss-process=image/watermark,type_ZHJvaWRzYW5zZmFsbGJhY2s,shadow_50,text_Q1NETiBAeXV0YW5nbWVuZw==,size_20,color_FFFFFF,t_70,g_se,x_16"></li>
<li>浏览器访问<br>
ip:27017 访问<br>
<img src="https://img-blog.csdnimg.cn/39b27f942db044feb80e35063ac802c7.png?x-oss-process=image/watermark,type_ZHJvaWRzYW5zZmFsbGJhY2s,shadow_50,text_Q1NETiBAeXV0YW5nbWVuZw==,size_20,color_FFFFFF,t_70,g_se,x_16"></li>
</ul>
<h2 id="问题排查">问题排查</h2>
<ul>
<li>
<p>异常关闭时,手动关闭进程<br>
如果启动失败,可能是由于系统异常关闭,可能会有进程没有退出</p>
<pre><code class="language-bash">#查看mongodb的进程
ps aux | grep mongod
#根据查询的结果pid,关闭进程
kill -9 pid
</code></pre>
<p>mongod.lock 和 diagnostic.data文件删掉</p>
</li>
<li>
<p>自启动失效<br>
如果mongodb自启动,查看配置文件<code>/etc/mongod.conf</code>中fork配置是否有开启:<img src="https://img-blog.csdnimg.cn/3d4002e9405e4fa69e5c44ca6e2766cc.png"></p>
</li>
</ul>
<p><strong>参考:</strong><br>
CentOS7使用阿里镜像安装mongodb4.0<br>
mongodb启动异常</p><br><br>
来源:https://www.cnblogs.com/zhuyutang/p/15218814.html
頁:
[1]