赞
踩
1. MongoDB简介
MongoDB 是一个介于关系数据库和非关系数据库之间的产品,是非关系数据库当中功能最 丰富,最像关系数据库的。他支持的数据结构非常松散,是类似 json 的 bjson 格式,因此可 以存储比较复杂的数据类型。MongoDB 最大的特点是他支持的查询语言非常强大,其语法 有点类似于面向对象的查询语言,几乎可以实现类似关系数据库单表查询的绝大部分功能, 而且还支持对数据建立索引。它是一个面向集合的,模式自由的文档型数据库。MongoDB 适合对大量或者无固定格式的数据进行存储,如日志、缓存等。对事物支持较弱,不适用于复杂的多集合的级联查询。
2. 使用压缩包安装MongoDB
Linux系统下安装MongoDB主要有:.rmp包安装(也叫yum指令安装)、压缩包安装两种安装方式。官方网站推荐的安装方式为rmp包安装。由于本人的Linux系统当初在配置yum源仓库时使用了清华大学的yum源仓库,导致使用yum指令安装时一直报没有相应的mongodb-enterprise包,因而本人采用了压缩包安装方式。安装时,我的Linux系统版本为CentOS7;辅助工具为Xshell6;MongoDB版本为4.0.6。
2.1 安装MongoDB依赖包
采用MongoDB .tgz
压缩包安装首先需要运行如下指令安装依赖包
yum install libcurl openssl
2.2 下载和加压缩安装包
官网下载地址:https://www.mongodb.com/download-center#community
官网下载特别慢,可去我的百度网盘下载4.0.6版本
百度网盘下载链接:https://pan.baidu.com/s/1Z11VTYn6BINidgQt6QqBcw 提取码:ct1w
下载后将mongdb压缩包通过xshell的Xftp上传到/usr/local目录,然后切换到/usr/local目录下
执行解压命令: tar -zxvf mongodb-linux-x86_64-4.0.6.tgz
执行重命名命令: mv mongodb-linux-x86_64-4.0.6 mongodb
2.3 添加MongoDB的二进制路径(/usr/local/mongodb/bin 路径)到系统的PATH环境变量中
有以下三种方式实现 :
下面的例子采用第3种方式:
执行vim /etc/profile
命令后按i键编辑,在文件末尾加上如下配置
export MONGO_HOME=/usr/local/mongodb
export PATH=$PATH:${MONGO_HOME}/bin
保存退出后执行:source /etc/profile 重启配置文件
2.4 配置MongoDB数据、日志目录和启动脚本
默认情况下MongoDB运行时会使用mongod用户账号和下面的默认目录
/var/lib/mongo(数据目录)
/var/log/mongodb(日志目录)
如果你是通过.rpm包安装的话,MongoDB会创建默认目录,并将这些目录的所有者和组设置为mongod;但是这里是通过压缩包安装的MongoDB, MongoDB没有创建默认用户,需要我们手动创建data和log目录,执行如下两条命令即可:
mkdir -p /var/lib/mongo
mkdir -p /var/log/mongodb
默认情况下,MongoDB使用mongod用户帐户运行。MongoDB运行后,将这些目录的所有者和组设置为mongod,所以我们需要给所有者和组用户授予访问data和log目录的权限。因为当前用户为root用户,所以需要创建mongod用户并修改密码
添加 mongod用户指令: useradd -s /bin/bash mongod
修改mongod用户密码指令: passwd mongod(修改密码时需要两次输入新密码)
修改MongoDB相关目录的属主用户为mongod指令:
chown -R mongod:mongod /usr/local/mongodb
chown -R mongod:mongod /var/lib/mongo
chown -R mongod:mongod /var/log/mongodb
端口开墙:
由于Linux 系统对大部分端口都设有防火墙,因此需要给MongoDB默认端口27017开墙,执行以下开墙命令:
firewall-cmd --permanent --zone=public --add-port=27017/tcp
提示success,表示开墙成功。
配置mongodb启动项脚本:
执行vim /etc/mongodb.conf, 按i键进入编辑模式,加入如下内容:
dbpath=/var/lib/mongo
logpath=/var/log/mongodb/mongodb.log
auth=false
bind_ip=127.0.0.1
logappend=true
保存退出后点击Xshell左上角的“新建连接”按钮,使用mongod账户建立一个新连接,
用户身份验证输入mongod用户及其密码
1)执行 cd usr/local/mongodb/bin 命令
2)执行 ./mongod -f /etc/mongodb.conf 命令
3)新开一个客户端窗口,仍然使用mongod用户的连接,执行命令 ./mongo
控制台显示如下信息表示启动MongoDB服务器成功!
4) 执行命令创建mongodb服务的root用户及students数据集合:
db.createUser({user:"root",pwd:"123456",roles:[{role:"readWrite",db:"students"}]})
5)执行插入单条数据的命令:
db.students.insertOne({id:"1001",name:"张三",age:"24"})
插入成功后控制台显示如下信息:
- > db.students.insertOne({id:"1001",name:"张三",age:"24"})
- {
- "acknowledged" : true,
- "insertedId" : ObjectId("5d176ff128595515f5dc51da")
- }
6) 执行查询数据命令:
db.getCollection("students").find()
查询成功后控制台显示如下信息:
- > db.getCollection("students").find()
- { "_id" : ObjectId("5d176ff128595515f5dc51da"), "id" : "1001", "name" : "张三", "age" : "24" }
小结:Linux系统下安装MongDB文档型数据库服务器有点小复杂,需要仔细参照官网提供的安装指导文档。而参照一些博客提供的安装指导文档大部分没有提示一些踩过的坑,导致你参照他们的博客可能安装过程中遇到各种报错。本文是我仔细参考官网安装教程和CSDN达人课Git Chat教程,花了块一天的时间经过仔细严格在本机验证通过后而写下的Linux系统Contos7版本下安装MongoDB的指导图文教程,可操作性强,希望能给一些想入门MongoDB文档型数据库的同行有所帮助,后面有时间我将继续讲解Spring Boot项目整合MongoDB数据库。
参考文章:
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。