共计 1435 个字符,预计需要花费 4 分钟才能阅读完成。
自动写代码机器人,免费开通
这期内容当中丸趣 TV 小编将会给大家带来有关 MongoDB 中有哪些数据库命令,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。
命令是如何工作的
这里有个你比较熟悉的例子:drop, 如果从 Shell 里删除一个 collection,我们运行 db.test.drop(). 实际上,在内部执行的是 drop 命令,跟下边用 runCommand 执行的操作是一样的。
db.runCommand({drop : test});{nIndexesWas : 1, msg : indexes dropped for collection , ns : test.test , ok : true}
ok 表示是否执行成功
实际上,mongoDB 的命令被实现为一种对叫 $cmd 的 collection 的特殊查询,runCommand 只是使用参数进行了一次查询,所以我们的 drop 也可以这样写。
db.$cmd.findOne({drop : test});
当 mongoDB 服务器接到一个对 $cmd 的查询时,使用一种特殊的逻辑来处理。几乎所有的驱动都提供了 runCommand 方法来执行命令,实际上这些命令都可以通过执行查询的方式来完成。
下边是一些最常用的命令:
buildInfo: {buildInfo : 1}, 返回 mongoDB 服务器版本和宿主操作系统的信息 collStats:{collStats : collection},给出指定 collection 的统计信息,包括数据大小,分配的存储控件,索引大小等 distinct:{distinct : collection, key : key, query : query} 返回在指定的 collection 里符合 query 条件的所有 key 的值 drop:{drop : collection},删除 collection 的说有数据 dropDatabase:{dropDatabase : 1},删除当前数据库的所有数据 dropIndexes:{dropIndexes : collection, index : name},删除 collection 上名字为 name 的索引 findAndModify:参见第 3 章 getLastError:{getLastError : 1[, w : w[, wtimeout : timeout]]},检查此连接上最后操作的错误或状态信息,可以指定一个选项,此命令将会阻塞直到 w 个 salves 复制了最后的那个操作或者时间超时 (毫秒)isMaster:{isMaster : 1},检查此服务器是 master 还是 slavelistCommands:{listCommands : 1},列出此服务器上所有可用命令 listDatabases:{listDatabases : 1},列出服务器上所有数据库 ping:{ping : 1},检查服务器是否正在运行,即使服务器处于锁定状体此命令也会立即返回 renameCollection:{renameCollection : a, to : b},将 collection 的名字从 a 改为 brepairDatabase:{repairDatabase : 1}, 修复并压缩当前数据库 serverStatus:{serverStatus : 1},获取此服务器的管理统计信息。
上述就是丸趣 TV 小编为大家分享的 MongoDB 中有哪些数据库命令了,如果刚好有类似的疑惑,不妨参照上述分析进行理解。如果想知道更多相关知识,欢迎关注丸趣 TV 行业资讯频道。
向 AI 问一下细节