安装和使用mongodb
环境: Ubuntu 13.04
安装MongoDB
$sudo apt-get install mongodb
会自动安装libpcrecpp0 libboost-system1.42.0 libboost-filesystem1.42.0
libboost-program-options1.42.0 libboost-thread1.42.0 xulrunner-2.0-mozjs
mongodb-clients mongodb-server mongodb-dev mongodb 等依赖包。
$ps aux | grep mongod
安装Python语言驱动
$sudo apt-get install python-setuptools
$sudo easy_install pymongo
配置MongoDB
$sudo vim /etc/mongodb.conf
dbpath=’your datebase path’
logpath=’where to log’
logappend=true
bind_id=127.0.0.1
port=27017
使用Mongo测试数据库
Mongo是客户端,Mongod是服务端。下面使用Mongo测试下服务。
root@ubuntu:~# mongo
MongoDB shell version: 1.6.3
Mon Jun 27 19:15:05 *** warning: spider monkey build without utf8 support. consider rebuilding with utf8 support
connecting to: test
>
> db.serverStatus()
输出参数为json格式有几个主要的类型:
uptime: 服务器运行时间(秒)
localTime: 服务器本地时间
mem: 服务器内存信息
connections: 当前连接数
opcounters: 操作统计
查看所有数据库:
> show dbs
admin
local
可以看出最初的时候只有 admin local test三个数据库,test在使用,这里没有显示出来。
切换数据库
>use admin
switched to db admin
>db.stats()
使用WEB测试数据库
访问27017
根据要求再访问 27017 + 1000 = 28017
可以看到一个很完整的管理页面,显然不如CouchDB的漂亮,呵呵。
完整测试
创建数据库
MongoDB没有创建数据库的命令,可以使用use dbname进行切换,use可以切换到不存在的数据库,当有数据写入的时候就会创建数据库。
root@ubuntu:~# mongo
>use mytestdb
创建Collection
进入数据库建立coolection数据库才算建立完成。使用
db.createCollection("mytestdb ", {capped:true, size:10000}) 单位是kb
或者db.runCommand( {createCollection:" mytestdb ", capped:true, size:100000} )
capped参数是建立固定大小的数据库文件,为了保证效率,mongo会在建立collection的时候占用磁盘空间,防止碎片。
> db.createCollection("mytestdb ", {capped:true, size:10000})
> show collections
mytestdb
建立文档
>db. mytestdb.insert({name:'xiaowanzi',age:8})
示例查询
操作符 |
SQL |
Mongo |
* |
Select * from mytestdb |
db.mytestdb.find() |
Column |
Select name,age from mytestdb |
db.mytestdb.find({},{name:1,age:1}) |
Where * |
Select * from mytestdb where age=24 |
db.mytestdb.find({age:24}) |
Column where |
Select name,age from mytestdb where age=24 |
db.mytestdb.find({age:24},{name:1,age:1}) |
>> << |
Select * from mytestdb where age>20 |
db.mytestdb.find({‘age’:{>:20}}) |
Like |
Select * from mytestdb where name like ‘wang%’ |
db.mytestdb.find({name:/^wangfan/}) |
Select * from mytestdb where name like ‘%wang%’ |
db.mytestdb.find({name:/wangfan/}) |
|
Order |
SELECT * FROM mytestdb ORDER BY name DESC |
db.mytestdb.find().sort({name:-1}) |
> db.mytestdb.find()
{ "_id" : ObjectId("4e093ff90edf95f31cbc7c29"), "name" : "xiaowanzi", "age" : 8 }
创建索引
使用ensureIndex来创建索引
db. mytestdb.ensureIndex({name:1})
db.runCommand({dropIndexes:'foo', index : '*'})
这里的1是正序,-1是倒序
删除索引
db.collection.dropIndexes();删除所有的索引
db. mytestdb.dropIndexes({name:1});
db.runCommand({dropIndexes:'wfcoll', index : {name:1}})
我们在name字段做一个索引,在age上做个负索引,如下:
>db.mytestdb.ensureIndex({name:1})
>db.mytestdb.ensureIndex({age:-1})
安装和使用mongodb的更多相关文章
- CentOS6.3安装MongoDB2.2 及 安装PHP的MongoDB客户端
下载源码:(放到 /usr/local/src 目录下) 到官网 http://www.mongodb.org/downloads 下载源码 https://fastdl.mongodb.org/li ...
- 在亚马逊amazon的AWS上安装Node和MongoDB服务器
在亚马逊amazon的AWS上安装Node和MongoDB服务器 在建立AWS上账号.创建EC2 ,用putty链接上之后,就可以用下面的方法开始安装. !!! 如果不是是自己建立的EC2, 而是由B ...
- windows下安装和配置mongoDB
上次在mac下安装和配置了mongodb,这次在windows下也尝试安装和配置mongodb. 1.首先下载mongodb压缩包,下载后解压到D盘或E盘.如下: 2.配置环境变量:桌面—计算机右键— ...
- Mac下安装和配置mongoDB
mac下的mongodb下载安装比较简单,主要有两种方式,一种是下载压缩包解压,另一种是通过npm或者homebrew命令安装,这里就不赘述了, 复杂的在于mongodb运行环境的配置(若未配置运行环 ...
- mac 安装和使用MongoDB
安装 尝试一:手动命令安装尝试二:采用Homebrew尝试三:下载安装包使用安装尝试一:手动命令安装按照官网https://docs.mongodb.com/manual/tutorial/insta ...
- Linux环境下安装NodeJS和mongoDB
前面的话 本文将详细介绍如何下Linux环境下安装NodeJS和mongoDB NodeJS [1]使用二进制包安装 1.在官网下载Linux环境下的NodeJS安装包 2.通过xftp软件将安装包上 ...
- Windows下安装并启动mongodb
一.Windows下mongodb的安装 MongoDB 提供了可用于 32 位和 64 位系统的预编译二进制包,你可以从MongoDB官网下载安装,MongoDB 预编译二进制包下载地址:https ...
- mongodb 怎样检测 安装成功 以及mongodb的一些增删改查命令
mongodb 主页 http://www.mongodb.org/ 1.先在网上下载一个mongodb的安装包,再打开cmd命令,找到你装mongodb的文件的路径,进到mongodb的文件下的li ...
- 在CentOS 7上使用Yum源安装和卸载 MongoDB 3.4
在CentOS 7上使用Yum源安装和卸载 MongoDB 3.4 1.配置Yum源 vim /etc/yum.repos.d/mongodb-org-3.4.repo [mongodb-org-3. ...
- nodeJS学习(7)--- WS开发 NodeJS 项目-节2 <安装&设置&启动 mongodb 数据库++遇到的问题>
本文系统 win7 参考:http://lib.csdn.net/article/mongodb/58097 http://www.cnblogs.com/lzrabbit/p/3682510.ht ...
随机推荐
- 二、安装并配置Kubernetes Master节点
1. 安装配置Master节点上的Kubernetes服务 1.1 安装Master节点上的Kubernetes服务 yum -y install kubernetes 1.2 修改kube-apis ...
- 关于ORACLE的字符窜存储(未完善,欢迎补充)
oracle中常见的用于存储字符串的数据类型有: 数据类型 是否定长 最多存储数 效率排行 备注 是否oracle特有 英文占位 中文占位 char 是 2000 比VARCHAR2稍高 char的长 ...
- C# 32位程序,申请大内存,附dome(wpf),亲测可用
1.我是vs2017,在选装vs的时候,需要安装c++模块,因为申请大内存的必要exe存放在vc的某个目录(下面会给出详细的地址)下的 2.安装完成在vs的安装目录可找到这个文件,我是社区版本的,如果 ...
- Asp.Net从相对路径获取绝对路径的方法(不需要httpcontext上下文也可)
//如果拿不到当前HttpContext上下文的话可以用该方法取得绝对路径 var filePath = HostingEnvironment.MapPath("需要获取绝对路径 的 相对路 ...
- requirejs的插件介绍与制作
本文由作者郑海波授权网易云社区发布. 前言 我这里就不介绍requirejs了, 简而言之: requirejs是支持AMD规范的模块加载器, 事实上它也是AMD的最直接推动者. 现在可供挑选的开源模 ...
- Java并发工具类之线程间数据交换工具Exchanger
Exchanger是一个用于线程间协做的工具类,主要用于线程间的数据交换.它提供了一个同步点,在这个同步点,两个线程可以彼此交换数据.两个线程通过exchange方法交换数据,如果一个线程执行exch ...
- php curl 伪造IP来源的实例代码
来源:http://www.jb51.net/article/31694.htm curl 它不但可以模仿用户登录,还可以模仿用户IP地址哦,为伪造IP来源,本实例仅供参考哦 //伪造ip ; $i ...
- [小tips]使用vscode,根据vue模板文件生成代码
本着苍蝇虽小也是肉的精神...... 目标: 我们希望每次新建.vue文件后,VSCODE能够根据配置,自动生成我们想要的内容. 方法: 打开VSCODE编辑器,依次选择"文件 -> ...
- 为什么有监听socket和连接socket,为什么产生两个socket
为什么有监听socket和连接socket,为什么产生两个socket 先看一半的socket建立连接的双方的过程: 客户端: socket()---->创建出 active_socket_fd ...
- 话谈C#第二天
今天做了几个小小的练习,和大家分享一下. 1.用*打印出等腰三角形,代码如下: static void Main(string[] args) { int n = 5; for (int i = 1; ...