阿里云服务器部署mongodb的详细过程

在阿里云上买了个服务器,部署mongodb遇到一些坑,解决办法也是从网上搜集而来,把零零碎碎的整理记录一下。

服务器是:alibaba cloud linux

下载安装

mongodb官网下载实在是太慢,可以从阿里镜像安装:阿里mongodb镜像

使用yum安装

在/etc/yum.repos.d目录下添加mongodb-org.repo文件

cd /etc/yum.repos.d
vim mongodb-org.repo
 
[mogodb-org]
name=mongodb repository
baseurl=http://mirrors.aliyun.com/mongodb/yum/redhat/7server/mongodb-org/4.0/x86_64/
gpgcheck=0
enabled=1

vim命令:是编辑(新建)文件的命令,退出编辑的时候,按esc,然后输入:wq退出报存。如果对linux命令不熟,用 xftp 等工具直接上传也可以。
baseurl:在阿里镜像中,点击下载地址后,选择的mongodb的版本的链接,根据选择的版本不同而不同,其他的不用变。

用yum安装

yum -y install mongodb-org

yum:linux下载包的命令,从上面添加的 .repo 文件中的 baseurl地址开始下载。-y是为了免去安装的确认操作。

配置

安装完成了过后,找到配置mongodb的配置文件

rpm -qla | grep mongod.conf	

修改配置文件

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

主要修改点:bindip值改为 0.0.0.0,这样可以外网访问
如果对linux的指令不熟悉的,可以直接在 xftp的工具里面选中文件,右键有编辑操作

运行

/etc/init.d文件夹中添加开机启动脚本mongod

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)
        
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
stop
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
start ;; *) echo "usage: /etc/init.d/mongod {start|stop|restart}" >&2 exit 1 esac

运行权限

# 获取文件权限
chmod +x /etc/init.d/mongodb

启动

service mongod start

停止

service mongod stop

重启

service mongod restart

卸载

# 停止服务
service mongod stop
# 删除安装的包
yum erase $(rpm -qa | grep mongodb-org)
# 删除数据和日志
rm -rf /var/log/mongodb
rm -rf /var/lib/mongo

验证

开启端口
mongodb默认端口为:27017,在配置文件/etc/mongod.conf里可以查看
在阿里云后台,防火墙打开端口

浏览器访问
ip:27017 访问

问题排查

异常关闭时,手动关闭进程
如果启动失败,可能是由于系统异常关闭,可能会有进程没有退出

#查看mongodb的进程
ps aux | grep mongod

#根据查询的结果pid,关闭进程
kill -9 pid

mongod.lock 和 diagnostic.data文件删掉

自启动失效
如果mongodb自启动,查看配置文件/etc/mongod.conf中fork配置是否有开启:

参考:
centos7使用阿里镜像安装mongodb4.0
mongodb启动异常

到此这篇关于阿里云服务器部署mongodb的详细过程的文章就介绍到这了,更多相关阿里云服务器部署mongodb内容请搜索www.887551.com以前的文章或继续浏览下面的相关文章希望大家以后多多支持www.887551.com!

(0)
上一篇 2022年3月21日
下一篇 2022年3月21日

相关推荐