MongoDB的安装和使用指南
什么是MongoDB
MongoDB 是一个基于分布式文件存储的数据库。由 C++ 语言编写。旨在为 WEB 应用提供可扩展的高性能数据存储解决方案。
MongoDB 是一个介于关系数据库和非关系数据库之间的产品,是非关系数据库当中功能最丰富,最像关系数据库的。
安装
Mac
Mac下面安装MongoDB。有两种方式一种从官网下载安装安装,下载地址
另外一种是使用Mac上面的神器"brew"来安装。
#安装mongodb
brew install mongodb
Linux
#下载mongodb
curl -O https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-3.0.6.tgz
#解压
tar -zxvf mongodb-linux-x86_64-3.0.6.tgz
#移动到/usr/local/mongodb
sudo mv mongodb-linux-x86_64-3.0.6/ /usr/local/mongodb
#添加到PATH路径中
export PATH=/usr/local/mongodb/bin:$PATH
使用
创建数据库目录
sudo mkdir -p /data/db
启动数据库
#这种启动方式会随终端的关闭导致mongodb也关闭
sudo ./mongod
#后台启动 --logpath制定日志位置
sudo ./mongod --fork --logpath /var/log/mongod.log
创建数据库
#语法use DATABASE_NAME 不存在就创建,存在则切换
use db-test
删除数据库
#删除当前数据库
db.dropDatabase()
创建集合
#这里集合可以理解关系型数据库里面的表的概念
db.createCollection("test")
插入数据
#{}里面为Json格式。请注意""
db.test.insert({"name":"小红","age":"10"})
db.test.insert({"name":"小蓝","age":"11"})
db.test.insert({"name":"小白","age":"12"})
db.test.insert({"name":"小紫","age":"13"})
db.test.insert({"name":"小绿","age":"14"})
查询数据
#查询test这个集合里面所有数据
db.test.find()
#根据条件查询数据。只查询名字叫做小白的行
db.test.find({"name":"小白"})
#查询年龄大于11的行 $gt 为操作符。见下面的操作符
db.test.find({"age":{$gt:"11"}})
操作符
#大于
$gt
#小于
$lt
#大于等于
$gte
#小于等于
$lte
修改数据
#修改小红的年龄为20。update为修改,save为替换
db.test.update({'name':'小红'},{$set:{"age":'20'}})
删除数据
#删除名字为小红的行
db.test.remove({'name':'小红'})
#删除test集合下面所有数据
db.test.remove({})
排序
#以年龄排序 1为升序排列,-1是用于降序排列
#db.test.find().sort({"age":-1})
Limit
#获取前3行数据
db.test.find().limit(3)
#按照年龄降序 获取前3条
db.test.find().sort({"age":-1}).limit(3)
备份
#备份db-test到/home/ubuntu目录下
mongodump -d db-test -o /home/ubuntu
还原
#从/home/ubuntu目录下面备份还原db-test数据库。
mongorestore -d db-test /home/ubuntu
图形化管理工具
虽然mongodb提供了shell查询工具。但是在日常开发过程为了方便快速开发和使用。一般会用到图形化管理工具。这里以robomongo为列。官网下载地址。下载安装完成之后。打开robomongo。
点击created,然后输入mongodb地址。默认地址localhost,端口为27017.然后点击save.
这样我们就可以通过robomongo很方便管理数据库了。后面还会继续分享一些在使用mongodb中遇到的问题。