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
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
相关文章推荐
- MongoDB实战开发 【零基础学习,附完整Asp.net示例】(转)
- 今天用MongoDB给用户做了个小插件,借鉴于实战开发 【零基础学习,附完整Asp.net示例】 写的非常不错
- MongoDB使用学习(一)-基础知识
- MongoDB学习11_MongoDB 基础(五)备份还原与导出导入
- mongodb学习1(基础知识)
- (转)MongoDB实战开发 【零基础学习,附完整Asp.net示例】
- 学习3——MongoDB基础配置及遇到的问题
- 【MongoDB学习笔记14】MongoDB的查询:find基础
- MongoDB 学习笔记(一)基础篇
- MongoDB学习——第一天 基础入门
- MongoDB实战开发 【零基础学习,附完整Asp.net示例】
- MongoDB实战开发 【零基础学习,附完整Asp.net示例】
- 8天学习MongoDB——第一天 基础入门
- MongDB基础学习(七)—— 【MongoDB for Java】Java操作MongoDB
- MongoDB实战开发 【零基础学习,附完整Asp.net示例】
- MongoDB实战开发 【零基础学习,附完整Asp.net示例】(转)
- Mongodb基础操作学习
- mongodb学习记录之一:基础查询
- MongoDB学习——基础入门
- MongDB基础学习(六)—— 【MongoDB for Java】Java操作MongoDB