《聊聊mongodb》系列一 认识mongodb及环境安装与配置

非关系数据库和关系型数据库的区别是什么?mongodb

  • 实质:非关系型数据库的实质:非关系型数据库产品是传统关系型数据库的功能阉割版,经过减小用不到或不多用的功能,来大幅度提升产品性能。
  • 价格:目前的非关系型数据库基本都是免费的,而比较有名气的关系型数据库都是收费的,好比:Oracle、DB二、MSSQL。MySql虽然是免费的,可是处理大型数据仍是要提早做不少工做的。
  • 功能:实际开发中,不少业务需求,其实并不须要完整的关系型数据库功能,非关系型数据库的功能就足够使用了。这种状况下,使用性能更高、成本更低的非关系型数据库固然是更明智的选择。

1、MongoDB简介:

MongoDB是一个基于分布式文件存储的数据库,由C++语言编写。目的是为WEB应用提供扩展的高性能的数据存储解决方案。MongoDB是一个介于关系型数据库和非关系型数据库之间的产品,是非关系型数据库当中功能最丰富,最像关系数据库的。他支持的数据结构很是松散,是相似json的bson格式,所以能够存储比较复杂的数据类型。Mongo最大的特色是他支持的查询语言很是强大,其语法有点相似于面向对象的查询语言,几乎能够实现相似关系数据库单表查询的绝大部分功能,并且还支持对数据创建索引。

2、mongoDB安装

如下用centos作相关演示,主要参考的是官方的安装文档,这里简单的总结一下shell

一、查看当前服务器版本号数据库

[root@izm5e2us6ou03c7io5v991z ~]# cat /etc/redhat-release
CentOS Linux release 7.4.1708 (Core)

二、Create a /etc/yum.repos.d/mongodb-org-3.6.repo file so that you can install MongoDB directly, using yum.json

[root@izm5e2us6ou03c7io5v991z ~]# sudo vi /etc/yum.repos.d/mongodb-org-3.6.repo

[mongodb-org-3.6]
name=MongoDB Repository
baseurl=https://repo.mongodb.org/yum/redhat/$releasever/mongodb-org/3.6/x86_64/
gpgcheck=1
enabled=1
gpgkey=https://www.mongodb.org/static/pgp/server-3.6.asc

三、使用yum安装当前最新的稳定版centos

[root@izm5e2us6ou03c7io5v991z ~]# sudo yum install -y mongodb-org

下面是安装成功的图片安全

图片描述

四、启动mongodb服务器

[root@izm5e2us6ou03c7io5v991z ~]# sudo service mongod start

五、服务器进入mongo微信

[root@izm5e2us6ou03c7io5v991z ~]# mongo --host 127.0.0.1:27017
MongoDB shell version v3.6.5
connecting to: mongodb://127.0.0.1:27017/
MongoDB server version: 3.6.5
>
>

六、建立管理员帐号而且查看是否建立成功数据结构

[root@izm5e2us6ou03c7io5v991z ~]# mongo --host 127.0.0.1:27017
MongoDB shell version v3.6.5
connecting to: mongodb://127.0.0.1:27017/
MongoDB server version: 3.6.5
>use admin
>db.createUser({ user: "useradmin", pwd: "adminpassword", roles: [{ role: "userAdminAnyDatabase", db: "admin" }] })
>db.auth("useradmin", "adminpassword")//若是返回1,则表示成功

mongodb中的用户是基于身份role的,该管理员帐户的 role是 userAdminAnyDatabase分布式

七、上一步若是验证失败,能够修改配置,而且重启mongodb,而后再次登录验证便可

[root@izm5e2us6ou03c7io5v991z ~]# sudo vi /etc/mongod.conf

//此处去掉security前面注释,而且加上下面一句话
security:
  authorization: enabled
  
//重启mongodb
[root@izm5e2us6ou03c7io5v991z ~]# sudo service mongod restart

[root@izm5e2us6ou03c7io5v991z ~]# mongo --host 127.0.0.1:27017
MongoDB shell version v3.6.5
connecting to: mongodb://127.0.0.1:27017/
MongoDB server version: 3.6.5
>use admin
>db.createUser({ user: "useradmin", pwd: "adminpassword", roles: [{ role: "userAdminAnyDatabase", db: "admin" }] })
>db.auth("useradmin", "adminpassword")
1

八、mac推荐客户端连接工具《Robomongo》
这里连接须要注意,由于我服务器是阿里云服务器,默认没有开启27017端口,因此要去安全组配置。
同时,mongodb的配置文件中的bind_ip 默认为127.0.0.1,默认只有本机能够链接。 此时,须要将bind_ip配置为0.0.0.0,表示接受任何IP的链接(修改mongo.conf文件sudo vi /etc/mongo.conf)

以上就是今天全部的内容了,更多精彩的文章,欢迎你们关注个人微信公众号:喝醉的清茶

相关文章
相关标签/搜索