教程: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(“xx-x-x-x-“) }

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的问题

系统已经装了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的信息别忘了在本站进行查找喔。


数据运维技术 » 教程:Linux MongoDB 编译安装详细步骤 (linux mongodb 编译安装)