在Ubuntu中安装MongoDB

浏览: 2018

linux-mongo-install

前言

MongoDB作为一种文档型的NoSQL数据库,使用起来非常灵活,回避了关系型数据库前期的复杂数据库设计。MongoDB存储基于JSON格式,同时用Javascript做为数据库操作语言,给了使用者无限想象的空间,可以通过编程在MongoDB服务器中解决非常复杂的条件查询的问题。

目录

  1. MongoDB在Windows中安装
  2. MongoDB在Linux Ubuntu中安装
  3. 通过命令行客户端访问MongoDB

1 MongoDB在Windows中安装

在Windows系统上安装MongoDB数据库是件非常简单的事情,下载可执行安装文件(exe),双击安装即可。下载地址:http://www.mongodb.org/downloads

  • MongoDB服务器运行命令:MongoDB安装目录/bin/mongod.exe
  • MongoDB客户端运行命令:MongoDB安装目录/bin/mongo.exe

2 MongoDB在Linux Ubuntu中安装

本文使用的Linux是Ubuntu 12.04.2 LTS 64bit的系统,安装MongoDB数据库软件包可以通过apt-get实现。但我们修要安装官方提供MongoDB软件源。

修改apt的source.list文件,增加10gen的设置。


# 下载密钥文件
~ sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 7F0CEB10
Executing: gpg --ignore-time-conflict --no-options --no-default-keyring --secret-keyring /tmp/tmp.kVFab9XYw0 --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: 下载密钥‘7F0CEB10’,从 hkp 服务器 keyserver.ubuntu.com
gpg: 密钥 7F0CEB10:公钥“Richard Kreuter ”已导入
gpg: 没有找到任何绝对信任的密钥
gpg: 合计被处理的数量:1
gpg: 已导入:1 (RSA: 1)

# 在source.list中增加MongoDB源的配置
~ 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

# 更新软件源
~ sudo apt-get update

在Linux Ubuntu中安装MongoDB数据库


#安装MongoDB服务器端
~ sudo apt-get install mongodb-10gen

安装完成后,MongoDB服务器会自动启动,我们检查MongoDB服务器程序


# 检查MongoDB服务器系统进程
~ ps -aux|grep mongo
mongodb 6870 3.7 0.4 349208 39740 ? Ssl 10:27 2:23 /usr/bin/mongod --config /etc/mongodb.conf

# 通过启动命令检查MongoDB服务器状态
~ netstat -nlt|grep 27017
tcp 0 0 0.0.0.0:27017 0.0.0.0:* LISTEN

# 通过启动命令检查MongoDB服务器状态
~ sudo /etc/init.d/mongodb status
Rather than invoking init scripts through /etc/init.d, use the service(8)
utility, e.g. service mongodb status

Since the script you are attempting to invoke has been converted to an
Upstart job, you may also use the status(8) utility, e.g. status mongodb
mongodb start/running, process 6870

# 通过系统服务检查MongoDB服务器状态
~ sudo service mongodb status
mongodb start/running, process 6870

通过web的控制台,查看MongoDB服务器的状态。在浏览器输入 http://ip:28017 ,就可以打开通过web的控制台了。

mongodb-web

3. 通过命令行客户端访问MongoDB

安装MongoDB服务器,会自动地一起安装MongoDB命令行客户端程序。

在本机输入mongo命令就可以启动,客户端程序访问MongoDB服务器。


~ mongo
MongoDB shell version: 2.4.9
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

# 查看命令行帮助
> help
db.help() help on db methods
db.mycoll.help() help on collection methods
sh.help() sharding helpers
rs.help() replica set helpers
help admin administrative help
help connect connecting to a db help
help keys key shortcuts
help misc misc things to know
help mr mapreduce

show dbs show database names
show collections show collections in current database
show users show users in current database
show profile show most recent system.profile entries with time >= 1ms
show logs show the accessible logger names
show log [name] prints out the last segment of log in memory, 'global' is default
use set current database
db.foo.find() list objects in collection foo
db.foo.find( { a : 1 } ) list objects in foo where a == 1
it result of the last line evaluated; use to further iterate
DBQuery.shellBatchSize = x set default number of items to display on shell
exit quit the mongo shell

MongoDB服务器,默认情况下是允许外部访问的。这样单节的MongoDB,我们已经成功地安装在Linux Ubuntu系统中。

作者介绍:

张丹,R语言中文社区专栏特邀作者,《R的极客理想》系列图书作者,民生银行大数据中心数据分析师,前况客创始人兼CTO。

10年IT编程背景,精通R ,Java, Nodejs 编程,获得10项SUN及IBM技术认证。丰富的互联网应用开发架构经验,金融大数据专家。个人博客 http://fens.me, Alexa全球排名70k。

著有《R的极客理想-工具篇》、《R的极客理想-高级开发篇》,合著《数据实践之美》,新书《R的极客理想-量化投资篇》(即将出版)。

Clipboard Image.png

《R的极客理想-工具篇》京东购买快速通道:https://item.jd.com/11524750.html

《R的极客理想-高级开发篇》京东购买快速通道:https://item.jd.com/11731967.html

《数据实践之美》京东购买快速通道:https://item.jd.com/12106224.html

推荐 1
本文由 张丹 创作,采用 知识共享署名-相同方式共享 3.0 中国大陆许可协议 进行许可。
转载、引用前需联系作者,并署名作者且注明文章出处。
本站文章版权归原作者及原出处所有 。内容为作者个人观点, 并不代表本站赞同其观点和对其真实性负责。本站是一个个人学习交流的平台,并不用于任何商业目的,如果有任何问题,请及时联系我们,我们将根据著作权人的要求,立即更正或者删除有关内容。本站拥有对此声明的最终解释权。

0 个评论

要回复文章请先登录注册