博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
MongoDB安装与操作大全
阅读量:6847 次
发布时间:2019-06-26

本文共 2520 字,大约阅读时间需要 8 分钟。

简介

  1. MongoDB是一个基于分布式文件存储的数据库。由C++语言编写。旨在为WEB应用提供可扩展的高性能数据存储解决方案。
  2. MongoDB 是一个介于关系数据库和非关系数据库之间的产品,是非关系数据库当中功能最丰富,最像关系数据库的。它支持的数据结构非常松散,是类似json的bson格式,因此可以存储比较复杂的数据类型。Mongo最大的特点是它支持的查询语言非常强大,其语法有点类似于面向对象的查询语言,几乎可以实现类似关系数据库单表查询的绝大部分功能,而且还支持对数据建立索引。

特点

  • 面向集合存储,易存储对象类型的数据。
  • 模式自由。
  • 支持动态查询。
  • 支持完全索引,包含内部对象。
  • 支持查询。
  • 支持复制和故障恢复。
  • 使用高效的二进制数据存储,包括大型对象(如视频等)。
  • 自动处理碎片,以支持云计算层次的扩展性。
  • 支持RUBY,PYTHON,JAVA,C++,PHP,C#等多种语言。
  • 文件存储格式为BSON(一种JSON的扩展)。
  • 可通过网络访问。
    适用场景
  • 网站数据
  • 缓存
  • 大尺寸、低价值的数据
  • 高伸缩性的场景
  • 用于对象及JSON 数据的存储
  • 高度事务性的系统
  • 传统的商业智能应用
  • 需要SQL 的问题

    一、MongoDB安装
    1、添加yum源

    vim /etc/yum.repos.d/mongodb-org.repo

    [mongodb-org]

    name=MongoDB Repository
    baseurl=
    gpgcheck=1
    enabled=1
    gpgkey=
    2、安装mongodb

    yum list

    yum install mongodb-org -y

    3、编辑配置文件

    vim /etc/mongod.conf #yum 安装的配置文件在/etc下

port: 27017 #监听端口

bindIp: 0.0.0.0 #监听地址
MongoDB安装与操作大全
4、开启服务

systemctl start mongod.service #方法一

mongod -f /etc/mongod.conf #方法二
netstat -anpt | grep 27017 #查看端口

MongoDB安装与操作大全

5、关闭服务

mongod -f /etc/mongod.conf --shutdown #方法一

kill-9 进程号 #方法二

6、进入数据库

MongoDB安装与操作大全
二、多实例操作
1、编辑实例2的配置文件

cd /etc/

cp -p mongod.conf mongod2.conf #复制配置文件
vim mongod2.conf #修改配置文件

path: /data/mongodb/mongod2.log dbPath: /data/mongodb/mongod2  port: 27018

2、创建日志文件、数据文件存放目录

mkdir -p /data/mongodb/

cd /data/mongodb/
mkdir mongod2
touch mongod2.log
chmod 777 mongod2.log

MongoDB安装与操作大全

3、开启实例2

mongod -f /etc/mongod2.conf

MongoDB安装与操作大全

4、查看端口

netstat -ntap

MongoDB安装与操作大全

四、基本操作命令
#增

//不存在会创建,不建立集合会删除

use mydb;
//插入数据
db.createCollection('a');
db.a.insert ({"id":1,"name":"zhang1"});
for (var i=2;i<=100;i++)db.a.insert({"id":i,"name":"zhang"+i});

MongoDB安装与操作大全

#查

//查看数据库

show dbs;
//查看集合
show collections;/show tables;

MongoDB安装与操作大全

//查看信息

db.a.find();
//筛选查看
db.a.findOne({"id":3});

MongoDB安装与操作大全

//别名筛选查看

c=db.a.findOne({"id":5});
//查看类型
typeof(c.id);

MongoDB安装与操作大全

#改

//更改

db.users.update({"id":3},{$set:{"name":"tom"}});

MongoDB安装与操作大全

#删

//删除信息

db.a.remove({"id":3});
//删除集合
db.a.drop();
//删除数据库
db.dropDatabase();

MongoDB安装与操作大全

五、导入、导出数据库

首先创建一个school数据库

for (var i=1;i<=100;i++)db.info.insert({"id":i,"name":"zhang"+i});

MongoDB安装与操作大全

//导出

mongoexport -d school -c info -o /opt/school.json #导出整个数据库
mongoexport -d school -c info -q '{"id":{$eq:10}}' -o /opt/top10.json #有条件的导出数据

MongoDB安装与操作大全

//导入

mongoimport -d abc -c info --file a.json

MongoDB安装与操作大全

六、备份、恢复

//备份

mongodump -d school -o /opt/ #/opt自动按数据库名称建立文件

MongoDB安装与操作大全

//恢复

mongorestore -d aaa --dir=/opt/school #还原的数据库可以不存在

MongoDB安装与操作大全

七、复制数据库

db.copyDatabase("aaa","aaa2") #数据库中内容也会复制

MongoDB安装与操作大全

八、克隆集合

mongo --port 27018 跨实例克隆(在另外的实例中)

db.runCommand({"cloneCollection":"aaa.info","from":"192.168.37.128:27017"})

MongoDB安装与操作大全

九、创建管理用户

use admin

db.createUser({"user":"root","pwd":"123","roles":["root"]})
db.auth("root","123") #显示1,成功

MongoDB安装与操作大全

十、进程管理

db.currentOp()

MongoDB安装与操作大全

转载于:https://blog.51cto.com/13784264/2176888

你可能感兴趣的文章
抽象工厂模式(Abstract Factory)
查看>>
zval_dtor与zval_ptr_dtor的区别
查看>>
Cisco route-map 源地址路由配置
查看>>
11月6日记
查看>>
[李景山php]每天TP5-20170109|thinkphp5-Model.php-2
查看>>
在windows(64)下安装php开发环境wamp+yaf框架+phpstorm以及TortoiseGit
查看>>
淘宝的IP地址库
查看>>
ORACLE 建库过程总结
查看>>
Comparable与Comparator的区别(转载)
查看>>
我的友情链接
查看>>
window下从硬盘安装ubuntu双系统
查看>>
socket服务器与客户机的互动
查看>>
三种方法实现选项卡效果
查看>>
API网关(API Gateway)
查看>>
Zookeeper集群搭建和简单使用
查看>>
IntelliJ IDEA快捷键
查看>>
Xmanager 连接 AIX 系统
查看>>
java的锁机制
查看>>
如何避免项目管理黑洞-为什么要使用redmine
查看>>
[]+与[]表达式
查看>>