mongodb 入门笔记

时间:2023-03-08 16:54:06
mongodb 入门笔记

选择Mongo的关键是:这是一个 JSON 文档数据库。

1. Mongo 的术语

  • 文档:一条完整的数据就是一个文档(对应于 MySQL 的一行)。
  • 集合:一组文档构成一个集合。类似 MySQL 中表的地位,但不必要求这组文档的结构一致。
  • 数据库:与 MySQL 一样,mongo 也可以建立多个数据库。 用 use db_name 来切换。

db 和 collection 都是延时创建的。添加document时才会真正创建。

2. 安装与启动 Mongo

官网有详细说明。http://www.mongodb.org/downloads

启动 Mongo 前,需要先通过 Mongod 启动服务进程,然后通过另一个终端用 mongo 连接数据库。

注意点:

  1. 如果是 windows 下解压安装,解压目录不能包含空格。
  2. linux 下安装后,默认的 dbpath 是 /data/db,一般没有读写权限。无法启动 mongod。
  3. dbpath 默认需要10G 以上的存储空间。否则无法启动 mongod。

3. Mongo 配置

mongo 启动时,可以传入一组配置参数。

可以将这些参数写入文件中,比如 mongo.conf,然后通过 --config 参数指定配置文件,无需每次启动时输入配置参数。

4. MongoDB 注册为 Windows 服务

D:/mongodb/bin>mongod --logpath D:/mongodb/data/logs/mongodb.log --logappend --dbpath D:/mongodb/data/db --serviceName MongoDB --install

若显示 Service can be started from the command line via 'net start "MongoDB"' 表示服务创建成功。

windows 下可以通过 net start MongoDB 和 net stop MongoDB 来启动和停止 MongoDB

  • 日志文件:/logs/MongoDB.log,以追加的方式写入日志;
  • 数据文件目录:/data/db,每个DB都会新建一个目录;
  • Windows服务的名称:MongoDB。

-- install 参数改为 --remove 并指定 serviceName 则可以删除服务,默认 serviceName 为 MongoDB

D:/mongodb/bin>mongod --serviceName MongoDB --remove

5. 数据库的 CRUD

进入 mongo 交互界面以后,用 use db_name 来切换。如果数据库不存在,则创建(延时创建)。

启动 mongo 交互界面时,也可以指定数据库。如

$ mongo db_name

db 查看当前数据库

show dbs 查看所有数据库,当前所处的数据库若还未插入文档,则不会显示。

db.dropDatabase() 删除数据

6. 集合的 CRUD

db.book.insert({"Title": "a byte of python", "tag": "python"})  第一次插入时建立集合

show collections 查看所有集合

db.book.drop() 删除集合。