本笔记针对https://www.shiyanlou.com/courses/running/50 网站对mongoDB的学习和总结。
1,启动mongoDB
因为mongoDB服务并不随着系统一起启动,所以需要首先启动mongoDB服务:
-
shiyanlou:~/ $ sudo service mongodb start
2,数据库简介
- 一个MongoDB可以创建多个数据库。
- 使用 show dbs可以查看所有数据库的列表
- 执行db命令则可以查看当前数据库对象或者集合。
- 运行use命令则可以连接到指定的数据库
连接数据库:
-
shiyanlou:~/ $ mongo > show dbs local0.078125GB
-1,文档
文档是mongoDB的核心,类似于关系型数据库的一行数据。多个键以及其关联的值放到一起就是文档。在mongoDB中使用一种类似JSON格式的bson存储数据。bson可以再json基础上添加一些json不具备的数据类型。如:
-
{"company":"Chenshi keji"}
-2,文档逻辑关系:
嵌入关系:A文档中存在B文档。
引用式关系:两个文档分卡,A文档通过引用B文档的ID来实现关联。
-3,集合
集合就是一组文档的组合,相当于关系数据库中的表。
-
{"company":"Chenshi keji"}{"people":"man","name":"peter"}
-4,元数据
数据库信息存储在集合中,他们统一使用系统的命名空间
DBNAME.system.* DBNAME可以用db或数据库名代替。
-
DBNAME.system.namespaces :列出所有名字空间 DBNAME.system.indexs :列出所有索引 DBNAME.system.profile :列出数据库概要信息 DBNAME.system.users :列出访问数据库的用户 DBNAME.system.sources :列出服务器信息
2,数据库的创建和销毁
-1,创建数据库
使用use命令床架数据库
-
use mydb
查看当前连接的数据库
-
db
查看所有的数据库
-
show dbs
列出的数据库中不显示mydb,是因为mydb为空。
-2,销毁数据库。
-
> db.dropDatabase() {"dropped":"local","ok":1}
3,集合的创建和销毁。
-1,创建集合
-
> use mydb switched to db mydb > db.createCollection("users") {"ok":1} >
查看集合
-
> show collections system.indexes users >
-2,删除集合
-
> db.users.drop() true >
4,向集合中插入数据
insert 插入数据时,如果users集合没有创建会自动创建。
-
> db.users.insert([{name:‘jam‘,email:‘[email protected]‘},{name:‘tom‘, email:‘[email protected] q.email‘}])
save 插入数据时,如果users集合没有创建会自动创建。
-
> db.users.save([{name:‘jam‘,email:‘[email protected]‘},{name:‘tom‘, email:‘[email protected] q.email‘}])
时间: 2024-10-17 18:37:27