目录

一、在windows 安装 mongodb

二、mongodb 概念介绍

三、mongodb 三元素

四、mongodb 操纵命令

五、python 操作 mongodb


 

 

一、在windows 安装 mongodb

1、从服务器下载 mongodb 安装包,这里是的是 zip 的安装包,下载链接: mongodb-windows-x86_64-4.4.6.zip

2、下载之后在文件夹下创建data 文件夹,再进入到解压文件夹下的 bin 文件夹,目录结构如下

3、在bin文件夹下执行命令 mongod -dbpath "D:\mongodb\data"  启动 mongodb 服务,结果如下

4、再打开一个命令行窗口,在bin目录下执行 mongo 连接mongodb 服务。执行 show dbs; 可以看到已经存在的db.MongoDB会默认创建admin、config、local库。

 5、新建 mongodb.conf,修改配置文件mongodb.conf的内容如下:

# 端口号,默认为27017
port=27017

# 数据库存放路径
dbpath=D:\mongodb\data

# 日志存放路径
logpath=D:\mongodb\mongodb.log

# 是否追加日志
logappend=true

# 是否启用日志,默认启用
journal=true

# 是否过滤无用日志信息
quiet=true

6.将MongoDB注册成Windows服务

①关闭之前的所有cmd窗口,开启新的管理员cmd,进入MongoDB的bin目录,输入 

mongod -config "D:\mongodb\mongodb.conf" --install --serviceName "MongoDB"

②此时可以通过win + r, services.msc的服务列表中,生成了MongoDB的服务,可以设置为开机自启,之后不用每次都手动启动MongoDB

如果想启动和关闭 mongodb 服务, 可以用管理员身份执行如下命令:

启动: net start MongoDB

停止:net stop MongoDB

7、将MongoDB的bin目录配置到path环境变量下,之后就可以在任意处输入 mongo 登录


二、mongodb 概念介绍

SQL术语/概念MongoDB术语/概念解释/说明
databasedatabase数据库
tablecollection数据库表/集合
rowdocument数据记录行/文档
columnfield数据字段/域
indexindex索引
joinsjoins表连接, mongodb 不支持
primary keyprimary key主键,MongoDB 自动将 _id 字段设置为主键

 

三、mongodb 三元素

三元素:数据库、集合、文档

1、文档(document):就是关系数据库中的一行。文档是一个对象,由键值对构成,是 json 的扩展形式。

{ "_id" : ObjectId("60bb738d1b680d63598f15a1"), "username" : "aaa" }

2、集合(collection):就是关系型数据库中的表。可以存储多个文档,结构可以不固定。可以存储如下数据在同一个集合中:

{  "username" : "aaa" }

{  "age" : 17 }

{  "username" : "aaa" , "age" : 17 }

四、mongodb 操纵命令

db : 查看当前的数据库

show dbs: 查看所有的数据库

use 数据库名:切换数据库。如果数据库不存在,创建数据库(创建后要插入数据才算创建成功)

db.集合名.insert(value): 添加数据到指定集合中

db.集合名.find(): 从指定集合中查找数据。

五、python 操作 mongodb

先安装依赖的模块:pip3 install pymongo

import pymongo

# 获取连接 mongodb 对象,默认端口:27017
client = pymongo.MongoClient("127.0.0.1", port=27017)

# 获取数据库(如果没有test这个数据库也没关系)
db = client.test

# 获取数据库中的集合(也就是 mysql 中的表)
collection = db.qa


# 1、insert_one 加入一条文档数据到集合中
collection.insert_one({"username":"aaa"})

# 2、insert_many: 加入多条文档数据到集合中
collection.insert_many([{"username":"a2"},{"username":"a1"}])


# 3、find_one: 查找一条文档对象
res = collection.find_one()
print(res)  # {'_id': ObjectId('60bb6e2151ee3420356af4f0'), 'username': 'aaa'}

# 4、find : 查找所有文档对象
cursor = collection.find()
print(res)  # <pymongo.cursor.Cursor object at 0x000001F7FEE62BA8>
for d in cursor:
    print(d)


# 5、update_one: 更新一条文档对象
collection.update_one({"username":"a1"}, {"$set":{"username":"a1", "age":18}})

# 6、update_many: 更新多条文档对象
collection.update_many({"username":"a1"}, {"$set":{"username":"a1", "age":18}})


# 7、delete_one: 删除一条文档对象
collection.delete_one({"username":"a1", "age":18})

# 8、delete_many: 删除多条文档对象
collection.delete_many({"username":"aaa"})

 


目录

 

Logo

北京人形旗下天工造物具身智能开源社区,聚焦具身天工与慧思开物两大平台

更多推荐