Mongodb基本命令总结

时间:2017-05-16作者:klpeng分类:数据库浏览:1696评论:0

远程连接

mongo --host 127.0.0.1 --port 27777

如果启用了安全验证还需要: -u user -p passwd


基本命令 

1、show dbs

显示当前数据库服务器上的数据库

2、use dbname

 切换到指定数据库dbname的上下文,可以在此上下文中管理pagedb数据库以及其中的集合等

3、show collections

显示数据库中所有的集合(collection)

4、db.serverStatus()  

查看数据库服务器的状态

5、查询指定数据库统计信息

use dbname

db.stats()

6、查询指定数据库包含的集合名称列表

db.getCollectionNames()


基本DDL和DML

1、创建数据库

在MongoDB中,可以直接通过use dbname来创建该数据库

2、删除数据库

db.dropDatabase()

3、创建集合

db.createCollection(collection_name, { size : ..., capped : ..., max : ... } )

4、删除集合

db.collection_name.drop()。

5、插入更新记录

db.集合.save({'a':'1', 'b':'2'})

使用save会将原来的记录值进行覆盖实现记录更新。

6、查询一条记录

findOne(),参数为查询条件,可选,系统会随机查询获取到满足条件的一条记录

7、查询多条记录 

find(),参数指定查询条件,不指定条件则查询全部记录。

8、删除记录

remove(),参数指定为查询条件

9、创建索引

ensureIndex(keypattern[,options])

10、查询索引

查询全部索引 db.system.indexes.find() 

查询集合的索引,可以通过集合的getIndexes()方法

11、删除索引

db.collection_name.dropIndexes() 参数为集合名,不带参则删除集合所有索引  

12、索引重建

reIndex()

13、统计集合记录数

db.collection_name.count()

14、查询并统计结果记录数

db.collection_name.find().count()

find()可以提供查询参数,然后查询并统计结果 

15、查询指定数据库的集合当前可用的存储空间

db.collection_name.storageSize()

16、查询指定数据库的集合分配的存储空间

db.collection_name.totalSize()


启动与终止 

1、正常启动

mongod --dbpath /path --logfile /mongo.log

指定数据存储目录和日志目录,如果采用安全认证模式,需要加上--auth选项,如:

mongod --auth --dbpath /path --logfile /mongo.log 

2、以修复模式启动

mongod --repair

以修复模式启动数据库。

实际很可能数据库数据损坏或数据状态不一致,导致无法正常启动MongoDB服务器,根据启动信息可以看到需要进行修复。或者执行:

mongod -f /etc/mongodb.conf --repair

3、终止服务器进程

db.shutdownServer()

终止数据库服务器进程。或者直接kill掉mongod进程


1、为数据库写数据(同步到磁盘)加锁

db.runCommand({fsync:1,lock:1})

说明:

该操作已经对数据库上锁,不允许执行写数据操作

2、查看当前锁状态

db.currentOp()

3、解锁

use admin

db.$cmd.sys.unlock.findOne()


数据备份、恢复与迁移管理 

1、备份全部数据库

cd backup

mongodump

2、备份指定数据库

mongodump -d dbname

3、备份一个数据库中的某个集合

mongodump -d dbname -c collection_name

4、恢复全部数据库

cd backup

mongorestore --drop

说明:将备份的所有数据库恢复到数据库,--drop指定恢复数据之前删除原来数据库数据,否则会造成回复后的数据中数据重复。

5、恢复某个数据库的数据

cd backup

mongorestore -d dbname --drop

6、恢复某个数据库的某个集合的数据

cd backup

mongorestore -d dbname -c collection_name --drop

7、向MongoDB导入数据

mongoimport -d dbname -c collection_name --type csv --headerline --drop < mongo.csv

说明:将文件mongo.csv的数据导入到dbname数据库的collection_name集合中,使用cvs或tsv文件的列名作为集合的列名。需要注意的是,使用--headerline选项时,只支持csv和tsv文件。

--type支持的类型有三个:csv、tsv、json


打赏
文章版权声明:除非注明,否则均为彭超的博客原创文章,转载或复制请以超链接形式并注明出处。
相关推荐

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

猜你喜欢