您的位置:首页 > 数据库 > Mongodb

MongoDB基础学习

2014-11-11 10:46 239 查看
基础概念 

    MongoDB是开源的文档数据库,可以提供高性能,高可用性,和自动扩展的功能!

    一个mongod服务可以有建立多个数据库,每个数据库可以有多张表,它表名叫collection,每个collection可以存放多个文档(document),每个文档都以BSON(binary json)的形式存放于硬盘中,因此可以存储比较复杂的数据类型。它是以单文档为最小单元存储的,你可以任意给一个或一批文档新增或删除字段,而不会对其它文档造成影响,这就是所谓的schema-free,这也是文档型数据库最主要的优点。

跟一般的key-value数据库不一样的是,它的value中存储了结构信息,所以你又可以像关系型数据库那样对某些域进行读写、统计等操作。

Mongo最大的特点是他支持的操作语言非常强大,其语法有点类似于面向对象的查询语言,几乎可以实现类似关系数据库单表查询的绝大部分功能,而且还支持对数据建立索引。

Mongo还可以解决海量数据的查询效率,据官方文档,当数据量达到50GB以上数据时,Mongo数据库访问速度是MySQL10 倍以上。 
基本操作命令

进入数据库admin

>use admin
(1)用户管理

增加或修改用户密码

>db.addUser('root','password')

用户认证

>use admin

>db.auth('name','pwd')

删除用户

>db.removeUser('name')

#查看用户列表

>db.system.users.find()

#查看所有用户

>show users

(2)数据库集合与文档查看命令

查看所有数据库

>show dbs

查看数据库下所有的collection

>show collections

>show tables

查看指定文件状态

>db.test.status()

查看各collection的状态

>db.printCollectionStats()

查看副本集状态

>db.printReplicationInfo()

查看分片状态

>db.printShardingStatus()

(3)数据库删除操作

删除collection

>db.test.drop()

只删除集合数据,不破坏表结构和索引

>db.test.remove()

删除当前的数据库

>use test

>db.dropDatabase()

管理命令:

查看colleciont状态

>db.test.stats()

查看colleciont数据的大小

>db.test.dataSize()

查询colleciont所有索引的大小

>db.test.totalIndexSize()

拷贝数据库

> db.copyDatabase('test','test1')

修复数据库

>db.repairDatabase()

设置记录profiling,0=off 1=slow 2=all

>db.setProfilingLevel(1)

查看profiling

>show profile
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: