img

MongoDB的简单操作与比较

与关系数据库对比

MySQL与MongoDB都是开源的常用数据库,但是MySQL是传统的关系型数据库,MongoDB则是非关系型数据库,也叫文档型数据库,是一种NoSQL的数据库。它们各有各的优点,来看看他们之间的相似之处吧

对比MySQLMongoDB
数据库Database(数据库)Database(数据库)
Table(表)Collection(集合)
Row(行)Document(文档)
Column(列)Field(字段)
客户端工具mysqlmongo
逻辑备份工具mysqldumpmongodump
逻辑还原工具mysqlmongorestore
数据导出工具mysqldumpmongoexport
数据导入工具sourcemongoimport
服务器守护进程mysqldmongod

简单操作

下面进行一些数据库的简单操作,

选择和创建数据库的语法格式:
use user_table

查看有权限查看的所有的数据库命令
show dbs

删库跑路
db.dropDatabase()

当使用 use user_table 的时候. user_table 其实存放在内存之中, 当 user_table 中存在一个 collection 之后, mongo 才会将这个数据库持久化到硬盘之中。

数据库命名

数据库名可以是满足以下条件的任意UTF-8字符串。

  • 不能是空字符串("")
  • 不得含有' '(空格)、.、$、/、\和\0 (空字符)。
  • 应全部小写。
  • 最多64字节。

有一些数据库名是保留的,可以直接访问这些有特殊作用的数据库。

  • admin: 从权限的角度来看,这是"root"数据库。要是将一个用户添加到这个数据库,这个用户自动继承所有数据库的权限。一些特定的服务器端命令也只能从这个数据库运行,比如列出所有的数据库或者关闭服务器。
  • local: 这个数据永远不会被复制,可以用来存储限于本地单台服务器的任意集合
  • config: 当Mongo用于分片设置时,config数据库在内部使用,用于保存分片的相关信息。