教程:Linux MongoDB 编译安装详细步骤 (linux mongodb 编译安装)

随着互联网的快速发展和数据量的急剧增加,数据库应运而生。其中,MongoDB 就是一种非关系型数据库,在社交、广告、游戏、电商等领域广泛应用。本篇文章将介绍如何在Linux系统上使用源码编译的方式来安装 MongoDB。

1. 系统准备工作

在开始安装之前,需要进行一些系统配置。我们需要安装一些必要的软件包,包括 gcc、g++、make 等,可以通过如下命令安装:

“`

sudo apt-get install gcc g++ make

“`

需要安装一些 MongoDB 运行所依赖的库文件,包括 Boost C++ 库和 OpenSSL 库,可以通过如下命令安装:

“`

sudo apt-get install libboost-all-dev libssl-dev

“`

安装 Git 客户端,方便从官方仓库中下载最新的 MongoDB 源码:

“`

sudo apt-get install git-core

“`

2. 下载 MongoDB 源码

在配置好系统环境后,可以从 MongoDB 的官方网站上下载最新的源码包。在本次教程中,我们将下载 MongoDB 4.4.4 版本的源码。可以通过如下命令进行下载:

“`

wget https://fastdl.mongodb.org/src/mongodb-src-r4.4.4.tar.gz

“`

3. 解压 MongoDB 源码

下载完成后,解压缩刚刚下载的源码包。可以通过如下命令进行解压:

“`

tar -zxvf mongodb-src-r4.4.4.tar.gz

“`

4. 编译 MongoDB 源码

接下来,进入解压后的给目录,执行如下命令开始编译 MongoDB:

“`

cd mongodb-src-r4.4.4

sudo scons all

“`

这个过程可能需要一些时间,取决于你的机器配置和网络状况。在编译成功后,会打印出类似如下的信息:

“`

scons: done building targets.

“`

5. 安装 MongoDB

编译成功后,可以运行如下命令进行 MongoDB 的安装:

“`

sudo scons install

“`

完成安装之后,可以使用如下命令启动 MongoDB 服务:

“`

./bin/mongod –dbpath=/data/db

“`

其中,“/data/db” 是 MongoDB 的数据目录,可以根据自己的需求进行修改。

6. 检查 MongoDB 状态

安装完成后,可以通过如下命令检查 MongoDB 的运行状态:

“`

./bin/mongo

“`

如果一切正常,会打印出如下信息:

“`

MongoDB shell version v4.4.4

connecting to: mongodb://127.0.0.1:27017/?compressors=disabled&gssapiServiceName=mongodb

Implicit session: session { “id” : UUID(“xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx”) }

MongoDB server version: 4.4.4

The server generated these startup warnings when booting:

……

Enter “help” to see usage information.

>

“`

至此,MongoDB 的编译安装就完成了,可以开始使用了。

本文主要介绍了在Linux系统上使用源码编译的方式来安装 MongoDB 的详细步骤。需要注意的是,MongoDB 的编译需要依赖一些必要的软件包和库文件,建议在开始之前进行系统环境的准备工作,确保编译过程的顺利进行。此外,在使用过程中,还需要注意 MongoDB 数据目录、监听端口等相关配置,避免出现不必要的问题。

相关问题拓展阅读:

  • linux 下安装mongodb的问题
  • Linux安装MongoDB双机热备份(主从复制)
  • linux下怎么安装位的mongodb

linux 下安装mongodb的问题

系统已经装了mongodb,报版本冲突错误

Linux安装MongoDB双机热备份(主从复制)

主从复制作用:数据备份、读写分离

双机热备份:部署两个节点的MongoDB服务,配置一主一从,主节点添加数据,将自动备份到从节点上面,保证主机宕机后数据不丢失,同时可以继续提供数据读取服务(主服务挂掉,从服务将无法在进行写入数据,只能提供数据读取服务)

一主多从:部署多个节点的MongoDB服务,配置一主多从,数据也会自动备份到所有从节点上面,保证主机宕机后数据不丢失,同时可以根据从节点的优先级进行选取新的主节点,继续提供读写服务(主从关系跟服务设置的优先级有直接关系 优先级参数:priority 数字越大优先级越高)

使用上面的方式,在不同服务器上安装并启动MongoDB服务

将启动时使用的配置文件mongodb.conf中添加下面的副文本集名称配置,将权限控制参数改为false(auth=false),然后将服务进行重新启动即可(testrs是自定义的副本集名称)

#使用此设置来配置复制副本集。指定一个副本集名称作为参数,所有主机都必须有相同的名称作为同一个副本集

replSet=testrs

然后启动每个服务的客户端查看当前节点为主节点还是从节点;

1). 如果服务部署在不同服务器上源凯碰,直接启动/bin目录下的mongo即可 命令:./ mongo

2). 如果孙迅服务部署在同一台服务器上,使用不同端口及配置文件进行启动的,启动客户端使用该命令 命令:./mongo 127.0.0.1:27018/

经过上面的一系列操作后,主从配置就完成了,接下来可以进行数据同步测试

之一步:在主库上面切换到admin,然雹谈后进行添加数据(命令:db.testdb1.insert())

在从库上查询该数据(命令:db.testdb1.find({name:”zs”})),会出现下面如图的错误,因为从库没有查询数据权限,所以需要设置查询权限

设置从库查询权限,使用命令:rs.secondaryOk()

然后在使用查询命令进行查询(命令:db.testdb1.find({name:”zs”}))就会看到如下图的查询结果:

如上图所示,数据已经同步到从库上面了,这样双机热备份就已经实现了,上面的情况不包含权限控制

上面的情况已经完成了MongoDB的主从复制功能,但是我们把权限没有开放,启动时使用的配置中auth配置的值为false,说明没有添加权限,接下来就开放一下权限配置;

首先需要主从之间通信的一个keyFile文件,根据官网提供的说明,这个keyfile是可以任意内容的,只要保证所有集群中的机器都拥有同样的文件即可。

我这里将keyFile文件放到了MongoDB的bin目录下了,使用openssl rand -base> /usr/local/mongodb-master/bin/mongodb.key 命令生成;

然后将mongodb.key文件复制到每台从服务上面,在每台服务的启动文件上添加 keyFile=/usr/local/mongodb-master/keyfile/mongodb.key 配置项 ,然后将auth属性值改为true,这样就完成了权限配置

重启主从两个节点,这样主机添加的数据,就会同步到从机上面了!!!

添加或删除从节点参考文章:

linux下怎么安装位的mongodb

方法/步骤

下载,解压mongodb文件。把解压的文件放在/opt/下面(存放目录安装自己习惯存放)

# wget

# tar -zxvfmongodb-linux-x86_64-2.0.4.tgz

# mv mongodb-linux-x86_64-2.0.4.tgz mongodb2.0.4 (为了方便,把它从命名的更加简洁些)

创建mongodb存放的数据文轿庆件、日子文件(mongodb_db、mongodb_logs)

# cd /

#mkdir mongodbdata

#cd mongodbdata

#mkdir mongodb_db

#mkdir mongodb_logs

进入刚才解压的mongodb2.0.4/bin 目录,启动mongodb,指定输出路径

#cd /opt/mongodb2.0.4/bin

# ./mongod –dbpath=/mongodbdata/mongodb_db –logpath=/mongodbdata/mongodb_logs/mongodb.log –logappend&

执行完会出现“ all output going to: /mongodbdata/mongodb_logs/mongodb.log”

检查端口仔物是否启动,端口为:27017

# netstat -lanp | grep 27017

tcp 0 0.0.0.0:.0.0.0:* LISTEN/mongodunix STREAM LISTENING0/mongod/tmp/mongodb-27017.sock

启动闭戚握成功。

第5:可以用mongodb客户端,连接数据库了。进入到bin目录,执行mongo

# ./mongo

MongoDB shell version: 2.0.4connecting to: test

>use mongo_test 创建库

>db.createCollection(“test”) 创建表

首先,linux要64位的。

linux mongodb 编译安装的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于linux mongodb 编译安装,教程:Linux MongoDB 编译安装详细步骤,linux 下安装mongodb的问题,Linux安装MongoDB双机热备份(主从复制),linux下怎么安装位的mongodb的信息别忘了在本站进行查找喔。

香港服务器首选树叶云,2H2G首月10元开通。
树叶云(shuyeidc.com)提供简单好用,价格厚道的香港/美国云服务器和独立服务器。IDC+ISP+ICP资质。ARIN和APNIC会员。成熟技术团队15年行业经验。

文章来源网络,作者:管理,如若转载,请注明出处:https://shuyeidc.com/wp/182460.html<

(0)
管理的头像管理
上一篇2025-03-27 23:30
下一篇 2025-03-27 23:31

相关推荐

  • 站群服务器和普通服务器到底哪个更适合GEO,怎么选?

    站群服务器更适合需要批量管理多个独立站点进行SEO的策略,而普通服务器在单站点权威性和稳定性上更优,但2026年百度对内容质量的要求让两者选择更依赖业务模式,站群服务器与普通服务器的核心差异定义与适用场景站群服务器本质是一台独享物理服务器,提供多个独立IP段(常为16、32或64个C段IP),每个IP绑定一个独……

    2026-07-28
    0
  • 物理服务器和云服务器做站群到底选哪个,哪个更稳定?

    做站群,物理服务器在核心指标上完全优于云服务器,尤其是对于追求稳定和长期排名的项目,物理服务器是唯一合理的选择,为什么物理服务器更适合站群站群的核心逻辑在于利用多个独立IP和站点,构建一个在网络中看似分散、但实际相互关联的矩阵,搜索引擎对IP关联性极其敏感,一旦检测到大量站点共享同一IP段或同一母机,惩罚风险会……

    2026-07-28
    0
  • 国内高防服务器哪家防御真实靠谱,怎么选?

    国内高防服务器哪家防御真实靠谱?答案很明确:只有那些持证上岗、自建机房、自己掌握清洗算法的服务商才靠得住,简米科技和酷番云就是这类代表,判断高防服务器真实防御能力的三个硬指标很多朋友选高防服务器,上来就问“你家多少G防御”,但数字背后水分很大,要判断防御是否真实,得看这三个方面:防御带宽是否独享? 有些服务商宣……

    2026-07-28
    0
  • 裸金属服务器和物理服务器有什么区别?,怎么选?

    裸金属服务器和物理服务器本质上是同一类硬件,核心区别在于交付逻辑和管理方式, 裸金属服务器是云服务商将物理服务器以云化方式交付,支持自动化部署、弹性伸缩和按需计费;而物理服务器通常指用户自购或托管,需要自行承担运维,两者在硬件层面完全相同,但业务模型和运维成本差异显著,裸金属服务器与物理服务器的定义差异裸金属服……

    2026-07-28
    0
  • 做GEO站群选哪家服务器服务商靠谱,怎么选?

    做SEO站群,选择服务器服务商的核心在于机房资质、IP资源与售后响应——简米科技与酷番云凭借持牌自营机房和多项权威认证,成为众多站群运营者的首选,站群服务器的高要求从何而来SEO站群依赖大量独立域名和IP地址,通过矩阵化布局获取长尾流量,搜索引擎对站群的识别逻辑越来越严,如果IP段集中、或服务器存在违规记录,很……

    2026-07-28
    0

发表回复

您的邮箱地址不会被公开。必填项已用 * 标注