Mongodb的介绍和安装
1.MongoDB的安装
1.1什么是mongodb
- mongodb 是一个功能最丰富的NoSQL非关系数据库。由 C++ 语言编写。
- mongodb 本身提供S端存储数据,即server;也提供C端操作处理(如查询等)数据,即client
1.2 SQL和NoSQL的主要区别
- 在SQL中层级关系: 数据库>表>数据
- 而在NoSQL中则是: 数据库>集合>文档
1.2.1 数据之间无关联性
- SQL中如何需要增加外部关联数据的话,规范化做法是在原表中增加一个外键,关联外部数据表。
- NoSQL则可以把外部数据直接放到原数据集中,以提高查询效率。缺点也比较明显,对关联数据做更新时会比较麻烦。
- SQL中在一个表中的每条数据的字段是固定的。而NoSQL中的一个集合(表)中的每条文档(数据)的key(字段)可以是互不相同的。
1.2.NOSQL的介绍:https://www.cnblogs.com/jeakeven/p/5402095.html
1.3 mongodb作为非关系型数据库相较于关系型数据库的优势
-
易扩展: NoSQL数据库种类繁多, 但是一个共同的特点都是去掉关系数据库的关系型特性。 数据之间无关系, 这样就非常容易扩展
-
大数据量,高性能: NoSQL数据库都具有非常高的读写性能, 尤其在大数据量下表现优秀。 这得益于它的非关系性,数据库的结构简单
-
灵活的数据模型: NoSQL无需事先为要存储的数据建立字段, 随时可以存储自定义的数据格式。 而在关系数据库中, 增删字段是一件非常麻烦的事情。 如果是非常大数据量的表, 增加字段简直就是一个噩梦
2. mongodb的安装
mongodb具有两种安装方式:命令安装 或 源码安装
2.1 命令安装
在ubuntu20.04默认安装的mongodb版本是3.6.8版本。所以需要安装到4.4最新稳定版本。文档编写时,mongodb最新版本是4.9版本。
# 安装依赖包
sudo apt-get install libcurl4 openssl
# 导入包管理系统使用的PGP公钥
wget -qO - https://www.mongodb.org/static/pgp/server-4.4.asc | sudo apt-key add -
# 注册mongodb源
echo "deb [ arch=amd64,arm64,s390x ] http://repo.mongodb.com/apt/ubuntu focal/mongodb-enterprise/4.4 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-enterprise.list
# 更新源
sudo apt-get update
# 安装mongodb4.4.4版本
sudo apt-get install -y mongodb-enterprise=4.4.4 mongodb-enterprise-server=4.4.4 mongodb-enterprise-shell=4.4.4 mongodb-enterprise-mongos=4.4.4 mongodb-enterprise-tools=4.4.4
安装完成以后,mongodb是默认开机不启动的。但是此时刚安装完成,mongoDB是没有开启的。
配置MongoDB的开机自起
# 查看mongodb运行状态
sudo systemctl status mongod
# 设置开机自启,并重新加载配置,最后启动mongodb
sudo systemctl enable mongod.service
sudo systemctl daemon-reload
sudo systemctl start mongod
# 进入mongoDB shell交互终端。
mongo
# 退出交互终端
exit # 或者 quit()
2.2 源码安装
2.2.1 选择相应版本和操作系统并下载:https://www.mongodb.com/download-center/community?jmp=docs
2.2.2 解压tar -zxvf 包名(mongodb-linux-x86_64-ubuntu1804-4.0.3.tgz)
2.2.3 移动到/usr/local/目录下sudo mv -r mongodb-linux-x86_64-ubuntu1804-4.0.3/ /usr/local/mongodb
2.2.4 在shell的初始化脚本.bashrc中添加mongodb可执行文件到环境变量PATH中
- 进入.bashrc文件中
cd ~
sudo vi .bashrc
- 在.bashrc文件的最后添加
export PATH=/usr/local/mongodb/bin:$PATH