Ubuntu 12.04上安装 MongoDB并运行

作者:凯鲁嘎吉 - 博客园 http://www.cnblogs.com/kailugaji/

在Terminal输入

sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 7F0CEB10
echo 'deb http://downloads-distro.mongodb.org/repo/ubuntu-upstart dist 10gen' | sudo tee /etc/apt/sources.list.d/mongodb.list
sudo apt-get update
sudo apt-get install mongodb-10gen

结果显示如下:

wrr@ubuntu:~$ sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 7F0CEB10
[sudo] password for wrr:
Executing: gpg --ignore-time-conflict --no-options --no-default-keyring --secret-keyring /tmp/tmp.vcN87sDcVF --trustdb-name /etc/apt/trustdb.gpg --keyring /etc/apt/trusted.gpg --primary-keyring /etc/apt/trusted.gpg --keyserver hkp://keyserver.ubuntu.com:80 --recv 7F0CEB10
gpg: requesting key 7F0CEB10 from hkp server keyserver.ubuntu.com
gpg: key 7F0CEB10: public key "Totally Legit Signing Key <mallory@example.org>" imported
gpg: key 7F0CEB10: public key "Richard Kreuter <richard@10gen.com>" imported
gpg: no ultimately trusted keys found
gpg: Total number processed: 2
gpg: imported: 2 (RSA: 2)
wrr@ubuntu:~$ echo 'deb http://downloads-distro.mongodb.org/repo/ubuntu-upstart dist 10gen' | sudo tee /etc/apt/sources.list.d/mongodb.list
deb http://downloads-distro.mongodb.org/repo/ubuntu-upstart dist 10gen
wrr@ubuntu:~$ sudo apt-get update
wrr@ubuntu:~$ sudo apt-get install mongodb-10gen

下载完成后,查看版本号

wrr@ubuntu:~$ mongo -version
MongoDB shell version: 2.4.14

如果不行,执行下面操作

wrr@ubuntu:~$ sudo rm /var/cache/apt/archives/lock
wrr@ubuntu:~$ sudo rm /var/lib/dpkg/lock
wrr@ubuntu:~$ sudo apt-get update

然后在查看版本号即可。以下命令为启动与关闭MongoDB。

sudo service mongodb start
sudo service mongodb stop

以下为启动MongoDB并进行简单操作。

wrr@ubuntu:~$ sudo service mongodb start
mongodb start/running, process 4004
wrr@ubuntu:~$ pgrep mongo -l
4004 mongod
wrr@ubuntu:~$ mongo
MongoDB shell version: 2.4.14
connecting to: test
Welcome to the MongoDB shell.
For interactive help, type "help".
For more comprehensive documentation, see
http://docs.mongodb.org/
Questions? Try the support group
http://groups.google.com/group/mongodb-user
Server has startup warnings:
Wed Dec 19 13:11:44.276 [initandlisten]
Wed Dec 19 13:11:44.276 [initandlisten] ** NOTE: This is a 32 bit MongoDB binary.
Wed Dec 19 13:11:44.276 [initandlisten] ** 32 bit builds are limited to less than 2GB of data (or less with --journal).
Wed Dec 19 13:11:44.276 [initandlisten] ** Note that journaling defaults to off for 32 bit and is currently off.
Wed Dec 19 13:11:44.276 [initandlisten] ** See http://dochub.mongodb.org/core/32bit
Wed Dec 19 13:11:44.276 [initandlisten]
> show dbs
local 0.03125GB

创建数据库School以及集合teacher与student

wrr@ubuntu:~$ sudo service mongodb start
start: Job is already running: mongodb
wrr@ubuntu:~$ mongo
MongoDB shell version: 2.4.14
connecting to: test
Server has startup warnings:
Wed Dec 19 13:11:44.276 [initandlisten]
Wed Dec 19 13:11:44.276 [initandlisten] ** NOTE: This is a 32 bit MongoDB binary.
Wed Dec 19 13:11:44.276 [initandlisten] ** 32 bit builds are limited to less than 2GB of data (or less with --journal).
Wed Dec 19 13:11:44.276 [initandlisten] ** Note that journaling defaults to off for 32 bit and is currently off.
Wed Dec 19 13:11:44.276 [initandlisten] ** See http://dochub.mongodb.org/core/32bit
Wed Dec 19 13:11:44.276 [initandlisten]
> show dbs
School 0.0625GB
local 0.03125GB
test (empty)
> use School
switched to db School
> db.createCollection('teacher')
{ "ok" : 1 }
> db.createCollection('student')
{ "ok" : 1 }
> show collections
student
system.indexes
teacher

插入数据

> db.student.insert({_id:2018001, sname:'zhangsan', sage:20})
> db.student.save({_id:2018002, sname:'lisi', sage:22})
> db.student.find()
{ "_id" : 2018001, "sname" : "zhangsan", "sage" : 20 }
{ "_id" : 2018002, "sname" : "lisi", "sage" : 22 }

查找数据

> db.student.find({sname:'lisi'})
{ "_id" : 2018002, "sname" : "lisi", "sage" : 22 }
> db.student.find({},{sname:1, sage:1})
{ "_id" : 2018001, "sname" : "zhangsan", "sage" : 20 }
{ "_id" : 2018002, "sname" : "lisi", "sage" : 22 }
> db.student.find({sname:'zhangsan', sage:22})
> db.student.find({$or: [{sage: 22},{sage:25}]})
{ "_id" : 2018002, "sname" : "lisi", "sage" : 22 }

修改数据

将李四的年龄修改为30

> db.student.find().pretty()
{ "_id" : 2018001, "sname" : "zhangsan", "sage" : 20 }
{ "_id" : 2018002, "sname" : "lisi", "sage" : 22 }
> db.student.update({sname:'lisi'},{$set:{sage:30}},false,true)
> db.student.find({sname:'lisi'})
{ "_id" : 2018002, "sname" : "lisi", "sage" : 30 }

删除数据

删除一条学生记录

> db.student.remove({sname:'zhangsan'})
> db.student.find()
{ "_id" : 2018002, "sname" : "lisi", "sage" : 30 }

删除学生数据集

> db.student.drop()
true
> show collections
system.indexes
teacher

退出

exit

如果想看更详细的解读,请看Ubuntu下MongoDB安装与使用教程_厦大数据库实验室博客

 

Ubuntu 12.04上安装 MongoDB并运行的更多相关文章

  1. Ubuntu 12.04上安装HBase并运行

    Ubuntu 12.04上安装HBase并运行 作者:凯鲁嘎吉 - 博客园 http://www.cnblogs.com/kailugaji/ 一.HBase的安装 在官网上下载HBase-1.1.2 ...

  2. Ubuntu 12.04上安装MySQL并运行

    Ubuntu 12.04上安装MySQL并运行 作者:凯鲁嘎吉 - 博客园 http://www.cnblogs.com/kailugaji/ 安装MySQL数据库 sudo apt-get upda ...

  3. Ubuntu 12.04上安装Hadoop并运行

    Ubuntu 12.04上安装Hadoop并运行 作者:凯鲁嘎吉 - 博客园 http://www.cnblogs.com/kailugaji/ 在官网上下载好四个文件 在Ubuntu的/home/w ...

  4. Ubuntu 12.04上安装R语言

    Ubuntu 12.04上安装R语言 作者:凯鲁嘎吉 - 博客园 http://www.cnblogs.com/kailugaji/ R的安装 sudo gedit /etc/apt/sources. ...

  5. 在 Ubuntu 12.04 上安装 GitLab6.0

    安装环境: 操作系统:    Ubuntu 12.4 LTS 英文 数据库:        mysql5.5.32 web服务器: nginx1.4.1 首先, 添加git和nginx的ppa,并升级 ...

  6. Ubuntu 10.04上安装MongoDB

    MongoDB是一个可扩展.高性能的下一代数据库.MongoDB中的数据以文档形式存储,这样就能在单个数据对象中表示复杂的关系.文档可能由 以下几 部分组成:独立的基本类型属性.“内嵌文档”或文档数组 ...

  7. ubuntu 12.04上安装QQ2013(转载)

    转自:http://www.cnblogs.com/wocn/p/linux_ubuntu_QQ_install.html 环境介绍: OS:Ubuntu12.04 64bit QQ:WineQQ20 ...

  8. 在 Ubuntu 12.04 上安装 GitLab7.x

    安装环境: 操作系统:    Ubuntu 12.4 LTS 英文 数据库:        postgresql webserver: nginx 能够说到7.x的时候,GitLab的文档已经相当完好 ...

  9. ubuntu 12.04上安装OpenERP 7的一次记录

    登陆ssh, 先更新系统: sudo apt-get update && sudo apt-get dist-upgrade 接着再为openerp运行创建一个系统用户,用户名就叫op ...

随机推荐

  1. 面试问烂的 Spring AOP 原理、SpringMVC 过程(求求你别问了)

    Spring AOP ,SpringMVC ,这两个应该是国内面试必问题,网上有很多答案,其实背背就可以.但今天笔者带大家一起深入浅出源码,看看他的原理.以期让印象更加深刻,面试的时候游刃有余. Sp ...

  2. centos 安装sbt

    1.yum install sbt 2.如果不行,则 curl https://bintray.com/sbt/rpm/rpm > bintray-sbt-rpm.repo sudo mv bi ...

  3. C#通过窗体属性缩小一定尺寸时,无法再缩小窗体尺寸问题

    问题:通过窗体属性缩小窗体尺寸时,发现改变到一定大小时无法再缩小.条件:在代码中设置窗体的尺寸由窗体属性里设置的宽高决定,但实际通过窗体属性设置窗体大小,一定大小时无法再缩小,那是因为我们没有把窗体属 ...

  4. GET和POST两种基本请求方法的区别(转)

    GET和POST是HTTP请求的两种基本方法,要说它们的区别,接触过WEB开发的人都能说出一二. 最直观的区别就是GET把参数包含在URL中,POST通过request body传递参数. 你可能自己 ...

  5. JVM-String.intern()

    故事起源于书籍<深入理解Java虚拟机>,案例如下: public class RunTimeConstantPoolOOM { public static void main(Strin ...

  6. CSS单位【记录】

    1.长度 2.角度 3.时间 4.分辨率 5.颜色 6.函数 7.生成内容 8.图像 9.数字 1.长度 <length>:数字和单位之间没有空格,0之后的长度单位是可选的 相对长度单位 ...

  7. canvas实现黑客帝国矩形阵

    在博客园看到了车大棒的写了一篇关于实现黑客帝国矩形阵,觉得canvas还是有一些奇妙的地方所在,故做个笔记记录一下. 实现的效果如下: 真的是一两行关键的代码添加就能实现意想不到的效果. 由于是can ...

  8. 切换横竖屏的时候Activity的生命周期变化情况

    关于这个,有个博客说得比较清楚:http://blog.csdn.net/wulianghuan/article/details/8603982,直接给出链接,哈哈哈.

  9. Android Studio调试时遇见Install Repository and sync project的问题

    我们可以看到,报的错是“Failed to resolve: com.android.support:appcompat-v7:16.+”,也就是我们在build.gradle中最后一段中的compi ...

  10. (办公)rom包

    所谓ROM包,通俗点来讲,也就是手机上的系统安装包.使用过智能手机的朋友可能都有过这样的遗憾,自己所用的官方系统虽然能够满足绝大部分的需求,但总有一些细节不是很合自己的心愿……比如说,内置的输入法不好 ...