0


ubuntu 安装 mongodb 教程(包括集群配置)

之前使用过的mongodb显然已经有些忘记了,使用公司环境搭建,发现在本地直接安装居然不会了,简单记录一下

版本:

    Ubuntu: Ubuntu 22.04 LTS   
lsb_release -a  #在Ubuntu上边查询系统的版本命令
    mongodb: 6.0.16

    mongodb的下载地址为: Download MongoDB Community Server | MongoDBhttps://www.mongodb.com/try/download/community 具体版本需要自己进行选择,我的如下所示:

安装:

常用的linux的存放位置:

    /usr/local/mongodb

下载好安装包后上传到对应的目录中:

sudo rz

#回车后,选择自己下载的安装包即可

上传之后确认包已经在当前目录,然后进行解压:

sudo tar -zxvf mongodb-linux-x86_64-ubuntu2204-6.0.16.tgz

如下所示表示成功:

安装到这里基本上就可以使用了

附上mongodb的使用教程

Release Notes for MongoDB 6.0 - MongoDB Manual v6.0https://www.mongodb.com/docs/v6.0/release-notes/6.0/

mongodb的简单配置:

基础路径的配置:

## 创建dbpath和logpath还有就是配置文件的路径

mkdir -p /etc/mongodb/data /etc/mongodb/log /etc/mongodb/conf

mongodb的启动:

bin/mongod --port=27017 --dbpath=/etc/mongodb/data --logpath=/etc/mongodb/log/mongodb.log --bind_ip=0.0.0.0 --fork

但是每次这样启动太麻烦了,另外还可以使用配置文件的方式,还需要配置linux的环境变量等一些列操作,这样后边集群也会很方便

/etc/mongodb/conf/mongodb.conf 中的内容:

systemLog:
  destination: file
  path: /etc/mongodb/log/mongodb.log # log path
  logAppend: true
storage:
  dbPath: /etc/mongodb/data # data path
  engine: wiredTiger # 存储引擎
  journal:           # 是否启用journal日志   
    enabled: true
net:
  bindIp: 0.0.0.0
  port: 27017
processManagement:
  fork: true

注意一定要是 yml 的格式!!

然后编辑配置文件:

vim /etc/profile

在文件的后边添加两行代码,指定mongodb的路径:

export MONGODB_HOME=/usr/local/mongodb/mongodb-linux-x86_64-ubuntu2204-6.0.16
export PATH=${MONGODB_HOME}/bin:${PATH}

然后进行刷新:

source /etc/profile

执行以下启动命令就可以了:

mongod -f mongodb.conf

结果如图所示:

关闭命令:

mongod --port=27017 --dbpath=/etc/mongodb/data --shutdown

在客户端连接mongodb的命令:

# 连接mongodb server端
mongosh --host=你的IP地址 --port=27017 
# 或是
mongosh 你的IP地址:27017
# 亦或是指定uri方式连接
mongosh mongodb://你的IP地址:27017/test

设置密码:

db.createUser({user:"admin",pwd:"123456",roles:["root"]})

设置了密码收我们还要重新启动mongodb,因为默认是不会启用鉴权的

mongod -f mongodb.conf --auth

启动之后使用windows客户端的mongosh软件应用进行连接:

mongodb://用户名:密码@IP地址:27017/admin

其中真正的格式应该是:

<connection-string>

是指向远程MongoDB服务器的连接字符串,它通常包含以下部分:

  • mongodb://: 这是协议前缀,表明连接类型。
  • <username>:<password>@: 可选的认证信息,如果服务器开启了用户认证。
  • <hostname>: 远程服务器的地址或域名。
  • :<port>: 可选的端口号,MongoDB默认端口是27017。
  • /<database-name>: 要连接的数据库的名字。

例如,如果你的远程MongoDB服务器地址是

example.com

,端口是

27017

,数据库名是

mydb

,用户名是

user

,密码是

pass

,你可以这样连接:


mongosh mongodb://user:pass@example.com:27017/mydb 在客户端使用时可以不带mongosh


这个命令

复制集环境的搭建:

环境准备

  • 安装 MongoDB并配置好环境变量
  • 确保有 10GB 以上的硬盘空间
  • 复制集的每个mongod进程应该位于不同的服务器。我们现在在一台机器上运行3个进程,因此要为它们各自配置:
  • 不同的端口(27017/27018/27019)
  • 不同的数据目录
  • 每一个配置文件中都配有各自的数据等地址:主要添加一行
  • replication: replSetName: rs0注意启动的时候将防火墙进行关闭,其他保持不变,
  • 都启动后,进入到其中一个执行如下命令
rs.initiate({ _id: "rs0", members: [{ _id: 0, host: "IP地址:27017" },{ _id: 1, host: "IP地址:27018" },{ _id: 2, host: "IP地址:27019" }] })

完成以上就可以启动了

注意当再次启动的时候,如果还要权限验证可以使用以下方式:

keyFile文件的作用: 集群之间的安全认证,增加安全认证机制KeyFile(开启keyfile认证就默认开启了auth认证了)。

在对应的文件下生成一个文件

openssl rand -base64 756 > data/mongo.key

将这个文件chmod 600 mongo.key 设置权限

然后将这个文件复制到其他两个文件

启动时使用:

mongod -f mongodb.conf --keyFile ../data/mongo.key

这样就可以添加权限的启动了

标签: ubuntu linux mongodb

本文转载自: https://blog.csdn.net/m0_37524259/article/details/140909575
版权归原作者 Listener_sc 所有, 如有侵权,请联系我们删除。

“ubuntu 安装 mongodb 教程(包括集群配置)”的评论:

还没有评论