博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Mongodb
阅读量:5099 次
发布时间:2019-06-13

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

一、Mongodb

     是一个基于分布式文件存储的开源数据库,在高负载情况下,可以添加节点,

将数据存储为仪个文档,类似Json 对象,所有存储在集合中的数据都是BSON格式。

二、Mongodb 安装

wget

tar xf mongodb-linux-x86_64-3.0.6.tgz

mv mongodb-linux-x86_64-3.0.6/ /usr/local/mongodb

echo “export PATH=/usr/local/mongodb/bin:\$PATH” >> /etc/profile

source /etc/profile

#设置配置文件

dbpath=/data/db

logpath=/data/app/mongodb/bin/mongo.log

logappend=true

fork=true

#auth = true  #开启认证选择,把#去掉。

port=27017

#4.0版本需要开放IP

bind_ip = IP

#启动

nohup mongod -f mgdb.cnf &

#登录

mongo 127.0.0.1:27017/admin -u admin -p admin

三、Mongodb 权限

权限

1、MongoDB 是没有默认管理员账号,所以先要添加管理员账号,开启权限认证。

2、切换到admin 数据库,添加的账号才是管理员账号

3、用户只能在用户所在数据登录,包括管理员账号

4、管理可以管理所有数据库,但是不能直接管理其他数据库,要先在admin数据库认 证才可以。

MongoDB数据库角色

角色说明:

Read:允许用户读取指定数据库

readWrite:允许用户读写指定数据库

dbAdmin:允许用户在指定数据库中执行管理函数,如索引创建、删除,查看统计或访问system.profile

userAdmin:允许用户向system.users集合写入,可以找指定数据库里创建、删除和管理用户

clusterAdmin:只在admin数据库中可用,赋予用户所有分片和复制集相关函数的管理权限。

readAnyDatabase:只在admin数据库中可用,赋予用户所有数据库的读权限

readWriteAnyDatabase:只在admin数据库中可用,赋予用户所有数据库的读写权限

userAdminAnyDatabase:只在admin数据库中可用,赋予用户所有数据库的userAdmin权限

dbAdminAnyDatabase:只在admin数据库中可用,赋予用户所有数据库的dbAdmin权限。

root:只在admin数据库中可用。超级账号,超级权限作者。

__system  什么权限都有。

# 设置管理员

> use admin

> show collections

> db.createUser( { user: "admin", pwd: "mongodb:passok",

roles:

[

{ role: "userAdminAnyDatabase", db: "admin" }

] } )

Successfully added user: { "user" : "admin", "roles" : [ { "role" : "userAdminAnyDatabase", "db" : "admin" } ] }

> show users

#添加普通用户

> use mydb

switched to db mydb

> db.createUser( { user: "tonny", pwd: "tonny@passok",

roles: [

{ role: "readWrite", db: "mydb" }

] } )

MongoDB 常用命令

show dbs  #显示数据库列表

show collections #显示当前数据库中的集合

show users #显示用户

use db #切换当前数据库

db.foo.find({a:1}) #对于当前数据库中的foo集合进行查找,条件是数据中又一个属性叫a,且a的值为1

db.dropDatabase() #删除当前使用数据库

db.copyDatabase("mydb","temp","127.0.0.1") #将本机的mydb的数据复制到temp数据库中

db.getName()  #查看用户

db.getMongo() #查看当前DB的连接机器地址

转载于:https://www.cnblogs.com/sunjingjingking/p/9240097.html

你可能感兴趣的文章
R中基本函数学习[转载]
查看>>
行内元素
查看>>
电机+1舵机+红外控制+灯+LCD
查看>>
EJB到底是什么???
查看>>
js创建对象的模式介绍
查看>>
Spring的@ExceptionHandler和@ControllerAdvice统一处理异常
查看>>
1.输入年月,打印该月的日历,同Windows右下角日历
查看>>
Google提出的新型激活函数:Swish
查看>>
向大神看齐: 如何阅读大型前端开源项目的源码(转)
查看>>
数据挖掘领域最有影响力的18个算法(转载)
查看>>
Jenkins入坑记
查看>>
在Dictionary使用foreach的注意
查看>>
[转]职业规划中的“我想要”和“我需要”
查看>>
Linux中gdb 查看core堆栈信息
查看>>
【Python】SyntaxError: Non-ASCII character '\xe8' in file
查看>>
TensorFlow实战学习笔记(14)------VGGNet
查看>>
Docker的安装使用-第1章
查看>>
H5 localStorage sessionStorage
查看>>
Array map()方法
查看>>
redis源码搭建以及配置主从服务器
查看>>