MongoDB,入门看这一篇足矣

一、介绍

在介绍 MongoDB 之前,我先介绍一下业务开发的时候遇到的痛点,以便大家对它有一个更加清晰的认识!

最近在用数据库存储数据的时候发现这么一个坑,例如从消息队列中监听消息的时候,原来的做法是将监听的消息数据存储在数据库,以便好对异常消息数据进行追溯,消息内容使用text类型存储,起初因为数据内容很短,没啥毛病,但是当随着业务的扩展,收到的消息内容越来越长,最后发现数据库中的text字段类型无法很好的支持查询,于是在这个时候,就开始考虑采用更加合适的数据库来存储这种消息数据!

在经过一番讨论之后,对于这种 json 类型的消息数据的存储,大家一致认为采用 MongoDB 是最佳的选择!

据官方介绍,MongoDB 是一个介于关系数据库和非关系数据库之间的产品,是非关系数据库当中功能最丰富、最像关系数据库的一款高性能的 NoSQL 数据库。

MongoDB 将数据存储为一个文档,数据结构由键值(key=>value)对组成。

其中的文档类似于 JSON 对象。字段值可以包含其他文档、数组及文档数组,数据结构的支持非常灵活!

的确,在使用的过程当中,正如所介绍的,数据的存储和查询,性能极快,而且很好的满足我们的需求!

话不多说,下面我们就一起来了解一下,这款数据库应该如何使用!

二、环境配置

在学习它之前,我们需要先搭建好环境,MongoDB 的安装也非常简单!

2.1、Windows 平台

如果你是 Windows 平台,MongoDB 提供了可用于 32 位和 64 位系统的预编译二进制,安装基本是傻瓜式的操作,登录 MongoDB 官网并且下载安装包,然后一步一步的操作即可!

 

2.2、Linux 平台

生产环境基本都是 Linux 平台,为了和生产保持一致,小编采用的服务器是CentOS7,安装过程也比较简单!

  • 创建资源文件
sudo vim /etc/yum.repos.d/mongodb-org-4.0.repo
  • 编辑内容如下
[mongodb-org-4.0]
name=MongoDB Repository
baseurl=https://repo.mongodb.org/yum/redhat/$releasever/mongodb-org/4.0/x86_64/
gpgcheck=1
enabled=1
gpgkey=https://www.mongodb.org/static/pgp/server-4.0.asc
  • 运行以下命令安装 mongodb
sudo yum install -y mongodb-org
  • 安装完成之后,配置mongod.conf允许远程连接
#编辑mongod.conf
vim /etc/mongod.conf
#将net:bindIp: 127.0.0.1 改为 0.0.0.0
net:
   bindIp:0.0.0.0
  • 最后启动服务
#开启服务
systemctl start mongod

#其他服务
#关闭服务
systemctl stop mongod

#重启服务
systemctl restart mongod

#开机自启
systemctl enable mongod

至此,环境配置已经完成!

三、数据库操作

MongoDB 的数据操作,是开发人员接触最频繁的部分,第一次使用的时候,你会发现它和我们传统使用的 sql 脚本命令完全不同,但是又类似,下面我们就一起来深入的了解下!

3.1、进入 MongoDB

进入 MongoDB 服务很简单,输入如下命令即可进入!

mongo

例如,在CentOS里面输入命令之后,进入的服务界面如下:

 

3.2、创建数据库

MongoDB 创建数据库的语法格式如下:

use DATABASE_NAME

如果数据库不存在,则创建数据库,否则切换到指定数据库

输入如下命令,可以查询数据库列表

#查询数据库列表
show dbs

#命令输出结果:
admin
config
local

可以看到,当前 MongoDB 有三个数据库!

输入如下命令,可以切换到admin数据库

use admin

输入db命令,还可以查询当前数据库

db

3.3、创建用户

默认的情况下,是没有用户的,也无法操作数据库,因此我们需要创建一个用户,同时给他分配权限!

3.3.1、创建一个管理员用户

创建一个用户、密码都是admin的用户,同时给这个用户分配userAdminAnyDatabase角色,指定的数据库为admin!

#创建一个admin用户
db.createUser(
{
  user: "admin"
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值