MongoDB是一个基于分布式文件存储 [1] 的数据库。由C++语言编写。旨在为WEB应用提供可扩展的高性能数据存储解决方案。
MongoDB是一个介于关系数据库和非关系数据库之间的产品,是非关系数据库当中功能最丰富,最像关系数据库的。它支持的数据结构非常松散,是类似json的bson格式,因此可以存储比较复杂的数据类型。Mongo最大的特点是它支持的查询语言非常强大,其语法有点类似于面向对象的查询语言,几乎可以实现类似关系数据库单表查询的绝大部分功能,而且还支持对数据建立索引。
官网地址:Download MongoDB Community Server | MongoDB
自定义安装位置:
他会在你的自定义的路径下自动创建相关文件,直接点击next即可
在log目录创建名为mongod.log的日志文件(这里安装时自动创建了,我就不新建一个了)
在安装目录新建文件mongo.config(可以新建一个txt文件,写好内容,然后重命名文件),内容可复制如下代码,只需要改两个部分:
dbpath=F:\APP\MongoDB\data\db #数据库路径
logpath=F:\APP\MongoDB\log\mongodb.log #日志输出文件路径
logappend=true #错误日志采用追加模式
journal=true #启用日志文件,默认启用
quiet=true #过滤掉无用的日志信息,若需要调试使用请设置为false
port=27017 #端口号 默认为27017
cmd打开bin目录,命令行启动MongoDB服务
说明启动成功了
最后一步,安装mongodb服务:
mongod --config "F:\APP\MongoDB\mongo.config" --install --serviceName "MongoDB"
打开任务管理器,可以看到MongoDB服务正在运行
配置结束
在MongoDB6之前,我们配置完环境变量后,可以直接通过终端输入"mongo"进入Mongoshell,但MongoDB6没有mong.exe和mongdb.exe,终端输入"mongo"会报错:
'mongo' 不是内部或外部命令,也不是可运行的程序或批处理文件。
要想通过命令行启动mongoDB需要自己下载一个Mongoshell,下载及使用相当简单
官网下载:MongoDB Shell Download | MongoDB
直接解压到MongoDB的安装目录下:
然后配置环境变量:
之后就可以基于”mongosh“指令,通过终端进入Mongoshell了
详细操作可以参考菜鸟教程:MongoDB 教程 | 菜鸟教程 (runoob.com)
这里做一个简单操作:
1、创建一个名为 Employee 的数据库 : use Employee
2、向Employee 数据库插入一些数据。db.Employee.insert({"name":"google"})
3、创建一个集合:db.createCollection("myCollection")
4、对集合重命名一下:
5、向集合中插入一些数据:db.myCollection.renameCollection("myColl")
db.myColl.insert({‘username’:‘zhangyu’,‘age’:13,‘salary’:500});
db.myColl.insert({‘username’:‘laohu’,‘age’:20,‘salary’:200});
6、查询集合myColl中的数据:db.myColl.find()
接下来我们用python操作一下MongoDB:
参考教程:Python MongoDB | 菜鸟教程 (runoob.com)
首先安装环境(我用的python版本是 3.7.3):
pip install pymongo
示例代码:
测试数据库是否存在:
import pymongo
myclient = pymongo.MongoClient('mongodb://localhost:27017/')
dblist = myclient.list_database_names()
# dblist = myclient.database_names()
if "Employee" in dblist:
print("数据库已存在!")
查询某集和下的第一条内容
import pymongo
myclient = pymongo.MongoClient("mongodb://localhost:27017/")
mydb = myclient["Employee"]
mycol = mydb["myColl"]
x = mycol.find_one()
print(x)