mongodb 常用操作命令
1.关闭mongodb
use admin
db.shutdownServer()
2.报错 not master and slaveok=false
rs.slaveOk();
3.查看集群副本的状态
rs.status();rs.config()
4.重置集群配置文件
config = { _id:"repl_test", members:[{_id:2,host:"10.40.6.110:27017"}]}
rs.reconfig(config, { force: true})
5.几个权限角色解释
dbAdmin:“数据库管理员”,可以对指定的数据库,进行创建索引、schema调整、统计信息搜集等,比如“dbStats”、“collStats”、“createCollection”、“createIndex”等;但是它不能创建用户和role
dbAdminAnyDatabase:是所有数据库的管理员
dbOwner:“数据库持有者”,继承“readWrite”、“dbAdmin”、“userAdmin”三种角色
root:root角色是一个超级角色,此角色的用户具有所有的操作权限
userAdmin:“用户管理员”,可以对指定的数据库,创建用户、修改用户的roles;这种角色,只能管理用户,不能访问数据库的数据
userAdminAnyDatabase:是所有数据库的用户管理员
数据库用户角色:read、readWrite;
数据库管理角色:dbAdmin、dbOwner、userAdmin;
集群管理角色:clusterAdmin、clusterManager、clusterMonitor、hostManager;
备份恢复角色:backup、restore;
所有数据库角色:readAnyDatabase、readWriteAnyDatabase、userAdminAnyDatabase、dbAdminAnyDatabase
超级用户角色:root
// 这里还有几个角色间接或直接提供了系统超级用户的访问(dbOwner 、userAdmin、userAdminAnyDatabase)
内部角色:__system
6.创建用户账号
use admin;
db.createUser(
{
user: "zhanghao",
pwd: "123",
roles: [ { role: "userAdminAnyDatabase", db: "admin" } ]
}
)
db.createUser(
{
user: "zhanghao_root",
pwd: "123",
roles: [ { role: "root", db: "admin" } ]
}
)
添加管理员用户
修改密码
db.updateUser( "root",{pwd:"123"});
db.changeUserPassword("username", "xxx")
密码认证
db.auth("admin","password");
删除用户
db.dropUser("football");
查看用户信息
db.runCommand({usersInfo:"userName"})
数据库帐号是跟着数据库来走的,哪里创建哪里认证,意思在admin库创建的其他库的账号认证信息只能在admin下认证
查看所有库的所有用户信息
db.system.users.find().pretty()
查看当前数据库的信息
db.getName() db.stats()
7.创建keyfile文件,在一台机器生成,然后传到其他副本的机器
openssl rand -base64 741 > /data/mongodb/keyfile
chmod 600 /data/mongodb/keyfile
8.将新的节点加入集群
rs.add("10.40.6.108:27017")
9.查看复制情况
db.printSlaveReplicationInfo()
10.修改集群的priority,强制把指定的节点升级为主
cfg=rs.conf()
cfg.members[1].priority=2
rs.reconfig(cfg)
11.移除某个节点
rs.remove("10.40.6.68:27017")
12.添加仲裁节点,如果原来是数据节点,会导致重启
rs.addArb("10.40.6.68:27017")
mongodb 常用操作命令的更多相关文章
- MongoDB常用操作命令大全
成功启动MongoDB后,再打开一个命令行窗口输入mongo,就可以进行数据库的一些操作.输入help可以看到基本操作命令,只是MongoDB没有创建数据库的命令,但有类似的命令 如:如果你想创建一个 ...
- MongoDB 常用操作命令大全
一.数据库常用命令1.Help查看命令提示 复制代码 代码如下: helpdb.help();db.yourColl.help();db.youColl.find().help();rs.help() ...
- MongoDB常用操作命令
查看所有数据库: > show dbs; 选定数据库: > use ECommerce; 查看当前数据库状态: > db.stats(); 查看当前数据库中所有集合: > sh ...
- mongodb常用操作命令(待续)
1. 开启mongodb命令 >mongo 默认链接到test数据库 2. 显示所有数据库>show dbs 3.切换数据库>use 数据库名 4.查找数据库里某张表的所有成员> ...
- MongoDB(1):常用操作命令大全
MongoDB常用操作命令大全(转) http://www.jb51.net/article/48217.htm 成功启动MongoDB后,再打开一个命令行窗口输入mongo,就可以进行数据库的一些操 ...
- 启动mongoDB 以及常用操作命令
nonsql 关系数据库 集合 表 文档 行 启动mongoDB之前首先手动创建存放MongoDB数据文件的目录,如e:\mongo_data 执行命令 mongod --dbpath=e: ...
- mongo 常用操作命令
表的帮助,格式:db.表名.help() db.test.find({id:10}) 返回test数据集ID=10的数据集 db.test.find({id:10}).count ...
- 【转载】Linux中常用操作命令
说明:开始学习linux系统,为了方便查看,特转载一篇Linux中常用操作命令,转载地址:http://www.cnblogs.com/laov/p/3541414.html 正文: Linux简介及 ...
- Git常用操作命令与图解
Git 是一个很强大的分布式版本控制系统.它不但适用于管理大型开源软件的源代码,管理私人的文档和源代码也有很多优势. Git常用操作命令: 1) 远程仓库相关命令 检出仓库:$ git clone g ...
随机推荐
- 解决阿里云专有网络ftp无法远程链接
配置好ftp后本机测试可用但无法远程连接 网络上找了很多方法,配置防火墙出入站规则均无效 提交阿里云工单,给出解决方法,测试后可用
- AcWing 206. 石头游戏 矩阵乘法|矩阵快速幂
AcWing 206. 石头游戏 石头游戏在一个 n 行 m 列 (1≤n,m≤8) 的网格上进行,每个格子对应一种操作序列,操作序列至多有10种,分别用0~9这10个数字指明. 操作序列是一个长度不 ...
- Python保存时提示“SyntaxError: Non-ASCII character '\xe8' in file”
原因 Python 默认的是ASCII 编码方式,如果出现中文会出现问题,所哟必须在代码的第二行或第一行 显示的声明编码方式(已注释的方式,即"#"开始) 解决方法 在文件头部加上 ...
- Celery 收下这捆芹菜!
目录 Celery简介 Celery构成 Task Broker Worker Backend Celery使用 安装 基本使用 异步任务: delay 延迟任务: apply_async 周期任务: ...
- html 小游戏合集(1.0)
最近做了个小游戏合集,有点沙雕,毕竟是1.0,将就看看. <!DOCTYPE html> <html> <head> <meta charset=" ...
- 记第一个javaweb网页
<%@ page language="java" contentType="text/html; charset=utf-8" pageEncodin ...
- 结巴分词 java 高性能实现,是 huaban jieba 速度的 2倍
Segment Segment 是基于结巴分词词库实现的更加灵活,高性能的 java 分词实现. 变更日志 创作目的 分词是做 NLP 相关工作,非常基础的一项功能. jieba-analysis 作 ...
- 【Leetcode 做题学算法周刊】第七期
首发于微信公众号<前端成长记>,写于 2020.01.15 背景 本文记录刷题过程中的整个思考过程,以供参考.主要内容涵盖: 题目分析设想 编写代码验证 查阅他人解法 思考总结 目录 12 ...
- cogs 247. 售票系统 线段树
247. 售票系统 ★★☆ 输入文件:railway.in 输出文件:railway.out 简单对比时间限制:1 s 内存限制:128 MB [问题描述] 某次列车途经C个城市,城市 ...
- go slice与函数传值的理解
go语言中所有的传值方式都是传值操作. 今天遇到了以下代码: func main(){ slice := make([],) fmt.Println(slice) change(s) fmt.Prin ...