阿里云Ubuntu16.04安装mongodb4.0.6

起因

阿里云安装mongodb4.0或以上版本都有很多人遇到困难,因为这里有一点是很让人无法接受的,如果自行手动一步步安装即很多配置系统环境变量都很难配对,特别是使用service xxx restart 等完美指令在运行期间。而最官方简单的方法就是apt install了,不过肯定是因为墙的问题大部分人都不太可能直接安装成功,而换成阿里云自己的apt源后发现最新版本只到3.6,是不是觉得很酸爽?不知道阿里云是不是出于想强推自己的mongodb 4.0rc的云服务库服务mongodb版所以迟迟不同步官方源过去。

有鉴于此今天我们来做一个相对完美的安装方法,仅供大家参考学习,毕竟mongodb4.0才开始支持事务,换言之真正能做到把sql数据库换掉从4.0版本才算达到基本要求。配全lookup来做外表关联(相当于join)这样的操作,再配合json schema作数据表结构限制等基本上已经具备了换掉传统sql数据库的条件,当然还多了很多nosql自身的优势。以下是相关官方资料:

mongodb json schema : https://docs.mongodb.com/manual/reference/operator/query/jsonSchema/

mongodb lookup:

https://docs.mongodb.com/manual/reference/operator/aggregation/lookup/

更多相关技术以后再一一祥解。

解决办法

解决办法其他是mongodb官方提供了,因为从较早前一段时间开始mongodb官方下载中心已经提供了deb安装文件的下载类型,这种类型的安装包其实是linux石像鬼分支的通用安装包文件类型。我们可以通过下载相关安装文件,再通过指令执行安装即可。以下是dpkg指令的相关说明:

dpkg -i package.deb 安装包 dpkg -r package 删除包 dpkg -P package 删除包(包括配置文件) dpkg -L package 列出与该包关联的文件 dpkg -l package 显示该包的版本 dpkg –unpack package.deb 解开 deb 包的内容 dpkg -S keyword 搜索所属的包内容 dpkg -l 列出当前已安装的包 dpkg -c package.deb 列出 deb 包的内容 dpkg –configure package 配置包

使用示例:sudo dpkg -i xxxxx.deb

操作演练

1.mongodb官方下载中心:
https://www.mongodb.com/download-center/community?jmp=docs

选择ubuntu 16.04 x64版本,如下图所示:

下载完成后我们可以通过sftp把deb文件上传到阿里云服务器上,然后通过指令:sudo dpkg -i
mongodb-org-server_4.0.6_amd64.deb

2.执行依赖包安装:

sudo apt-get install libcurl4 openssl

3.执行安装包:

sudo dpkg -i mongodb-org-server_4.0.6_amd64.deb Selecting previously unselected package mongodb-org-server. (Reading database ... 165879 files and directories currently installed.) Preparing to unpack mongodb-org-server_4.0.6_amd64.deb ... Unpacking mongodb-org-server (4.0.6) ... Setting up mongodb-org-server (4.0.6) ... Adding system user `mongodb' (UID 110) ... Adding new user `mongodb' (UID 110) with group `nogroup' ... Not creating home directory `/home/mongodb'. Adding group `mongodb' (GID 119) ... Done. Adding user `mongodb' to group `mongodb' ... Adding user mongodb to group mongodb Done. Processing triggers for man-db (2.7.5-1) ...

通过指仅查看mongodb是否安装正常,查看版本号:

mongod -version db version v4.0.6 git version: caa42a1f75a56c7643d0b68d3880444375ec42e3 OpenSSL version: OpenSSL 1.0.2g 1 Mar 2016 allocator: tcmalloc modules: none build environment: distmod: ubuntu1604 distarch: x86_64 target_arch: x86_64

再测试service操作是否正常

service mongod restart

只要没有报任何错误出来即为服务注册成功安装正确

再多讨论请关注我或留言一起相互学习。谢谢大家支持!