linux安装MongoDB(一)

网友投稿 773 2022-05-30

linux安装MongoDB(一)

一、linux环境

首先判断自己linux环境的位数,在现在响应版本的MongoDB数据库

getconf LONG_BIT 查看

二、下载mongodb

默认都是64位的,这个有点尴尬。。。

64位系统-https://www.mongodb.org/dl/linux/x86_64-debian81?_ga=2.15324022.1713724367.1498550277-1089294971.1498550277

32位下载列表地址 : https://www.mongodb.org/dl/linux

32位版本下载http://downloads.mongodb.org/linux/mongodb-linux-i686-v3.2-latest.tgz?_ga=2.114898759.1713724367.1498550277-1089294971.1498550277

2 .  linux (32位系统)下直接  wget   http://downloads.mongodb.org/linux/mongodb-linux-i686-v3.2-latest.tgz?_ga=2.114898759.1713724367.1498550277-1089294971.1498550277

3.    解压目录

tar -xvf   mongodb.tgz

4. 将目录移动到 /usr/local/mongodb

linux安装MongoDB(一)

mv mongodb(解压后的文件夹)    /usr/local/mongodb

5. 配置环境变量

修改/etc/profile, 添加如下内容

export MONGODB_HOME=/usr/local/mongodb

export PATH=$MONGODB_HOME/bin:$PATH

保存后执行如下命令:

vim /etc/profile

source /etc/profile

6.  查看mongodb版本信息 mongod -v

安装成功了! 下面进行配置, 启动

7.创建数据库目录

MongoDB需要自建数据库文件夹.

mkdir -p /data/mongodb

mkdir -p /data/mongodb/log

touch /data/mongodb/log/mongodb.log

添加配置文件

新建mongodb.conf配置文件, 通过这个配置文件进行启动.

vim  /etc/mongodb.conf

配置文件参数说明:

mongodb的参数说明:

--dbpath 数据库路径(数据文件)

--logpath 日志文件路径

--master 指定为主机器

--slave 指定为从机器

--source 指定主机器的IP地址

--pologSize 指定日志文件大小不超过64M.因为resync是非常操作量大且耗时,最好通过设置一个足够大的oplogSize来避免resync(默认的 oplog大小是空闲磁盘大小的5%)。

--logappend 日志文件末尾添加

--port 启用端口号

--fork 在后台运行

--only 指定只复制哪一个数据库

--slavedelay 指从复制检测的时间间隔

--auth 是否需要验证权限登录(用户名和密码)

注:mongodb配置文件里面的参数很多,定制特定的需求,请参考官方文档

配置文件内容:

dbpath=/data/mongodb

logpath=/data/mongodb/log/mongodb.log

logappend=true

port=27017

fork=true

##auth = true # 先关闭, 创建好用户在启动

通过配置文件启动服务:

mongod --journal  -f /etc/mongodb.conf (32位系统需加参数 --journal)

启动如果报错,解决思路:

1、执行了上面的启动命令后,出现如下提示,说明启动没有成功。

2、出现问题,先看日志文件,查看路径下的日志文件  /data/mongodb/log/mongodb.log ,发现这么一句话:

2018-04-28T13:22:15.277+0800 I CONTROL [initandlisten] options: { config: "/etc/mongodb.conf", net: { port: 27017 }, processManagement: { fork: true }, storage: { dbPath: "/data/mongodb", journal: { enabled: true } }, systemLog: { destination: "file", logAppend: true, path: "/data/mongodb/log/mongodb.log" } } 2018-04-28T13:22:15.303+0800 I STORAGE [initandlisten] exception in initAndListen: 28663 Cannot start server. The default storage engine 'wiredTiger' is not available with this build of mongod. Please specify a different storage engine explicitly, e.g. --storageEngine=mmapv1., terminating 2018-04-28T13:22:15.303+0800 I CONTROL [initandlisten] dbexit: rc: 100

这是存储引擎出现错误,即默认的存储引擎(default storage engine)原本为wiredTiger,wiredTiger这个存储引擎不适合mongodb,所以mongodb无法使用,当然就无法建立数据存储路径,将存储引擎换成mmapv1就可以了:

启动成功后,发现数据库中多了好多文件。

下次在启动,就可以采用上面的通过文件启动方式了。mongod --journal  -f /etc/mongodb.conf (32位系统需加参数 --journal)

通过配置文件关闭服务:

mongod --journal --shutdown -f /etc/mongodb.conf

8. 进入 MongoDB后台管理 Shell

cd /usr/local/mongodb/bin

./mongo

创建数据

命令  use test

switched to db test

创建用户, 设置权限

db.createUser(

{

user: "test",

pwd: "test",

roles: [ { role: "readWrite", db: "test" } ]

}

)

配置防火墙

将27017端口添加到防火墙中

vi /etc/sysconfig/iptables

-A INPUT -m state --state NEW -m tcp -p tcp --dport 27017 -j ACCEPT

/etc/init.d/iptables reload

TEST

命令  use test

db.abc.insert({"a":1,"b":2})

> db.abc.find()

8、mongodb目录介绍

Linux MongoDB

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:《KVM实战:原理、进阶与性能调优》 —2 KVM原理简介
下一篇:【Airflow】工作流自动化和调度系统
相关文章