MongoDB 一些基本操作<二>

来源:互联网 发布:软件验收单模板 编辑:程序博客网 时间:2024/04/30 14:23

1. 查询指定数据库的集合当前可用的存储空间
   use fragment
> db.test2.storageSize()   --1396736

2. 查询指定数据库的集合分配的存储空间
> db.baseSe.totalSize()  --1731952

3.为数据库写数据(同步到磁盘)加锁
>db.runCommand({fsync:1,lock:1})

说明:
该操作已经对数据库上锁,不允许执行写数据操作,一般在执行数据库备份时有用。执行命令,结果示例如下:

4.查看当前锁状态
db.currentOp()
说明:
查询结果如下所示:
[plain] view plaincopy
  1. {  
  2.         "inprog" : [ ],  
  3.         "fsyncLock" : 1,  
  4.         "info" : "use db.$cmd.sys.unlock.findOne() to terminate the fsync write/snapshot lock"  
  5. }  
其中,fsyncLock为1表示MongoDB的fsync进程(负责将写入改变同步到磁盘)不允许其他进程执行写数据操作
5、解锁
use admin
db.$cmd.sys.unlock.findOne()
说明:
执行解锁,结果如下所示:
[plain] view plaincopy
  1. { "ok" : 1, "info" : "unlock requested" }  
可以执行命令查看锁状态:
db.currentOp()
状态信息如下:
[plain] view plaincopy
  1. { "inprog" : [ ] }  
说明当前没有锁,可以执行写数据操作。