Linux 下Mongdb数据库
一、安装mongdb
1、创建安装目录
# mkdir /data/local # mkdir /data/local/mongodbdata
2、解压安装包
# tar -xvf /software/mongodb-linux-x86_64-2.4.10.tar -C /usr/local
# cd /usr/local
# mv mongodb-linux-x86_64-2.4.10 mongdb
二、配置mongdb
1、创建配置文件
# cd /usr/local/mongodb/
# vi mongodb.conf
配置如下:
port=27017
dbpath=/data/local/mongodbdata
logpath=/data/local/mongodbdata/mongodb.log
logappend=true
fork=true
2、设置开机启动
# vim /etc/rc.local
新增内容如下:
# add for mongodb
/usr/local/mongodb/bin/mongod --config /usr/local/mongodb/mongodb.conf
三、启动mongdb
1、运行mongdb
# cd /usr/local/mongodb/
# ./bin/mongod --config ./mongodb.conf
2、查看服务端口,确认服务启动正常
# netstat -anltp | grep mongod
tcp 0 0 0.0.0.0:28017 0.0.0.0:* LISTEN 2011/./bin/mongod
tcp 0 0 0.0.0.0:27017 0.0.0.0:* LISTEN 2011/./bin/mongod
四、新增用户
1、启动客户端
#cd /usr/local/mongdb/bin
# ./mongo
MongoDB shell version: 3.0.6
connecting to: test
Server has startup warnings:
2019-11-27T20:47:21.338+0800 I STORAGE [initandlisten]
2019-11-27T20:47:21.338+0800 I STORAGE [initandlisten] ** WARNING: Readahead for /data/local/mongodbdata is set to 4096KB
2019-11-27T20:47:21.338+0800 I STORAGE [initandlisten] ** We suggest setting it to 256KB (512 sectors) or less
2019-11-27T20:47:21.338+0800 I STORAGE [initandlisten] ** http://dochub.mongodb.org/core/readahead
2019-11-27T20:47:21.507+0800 I CONTROL [initandlisten] ** WARNING: You are running this process as the root user, which is not recommended.
2019-11-27T20:47:21.507+0800 I CONTROL [initandlisten]
2019-11-27T20:47:21.507+0800 I CONTROL [initandlisten]
2019-11-27T20:47:21.507+0800 I CONTROL [initandlisten] ** WARNING: /sys/kernel/mm/transparent_hugepage/enabled is 'always'.
2019-11-27T20:47:21.507+0800 I CONTROL [initandlisten] ** We suggest setting it to 'never'
2019-11-27T20:47:21.508+0800 I CONTROL [initandlisten]
2019-11-27T20:47:21.508+0800 I CONTROL [initandlisten] ** WARNING: /sys/kernel/mm/transparent_hugepage/defrag is 'always'.
2019-11-27T20:47:21.508+0800 I CONTROL [initandlisten] ** We suggest setting it to 'never'
2019-11-27T20:47:21.508+0800 I CONTROL [initandlisten]
>
2、新增用户
#新增admin读写权限
> use admin;
switched to db admin
> db.createUser({user:"admin",pwd:"test.1234",roles:[{role: "readWrite", db: "admin"}]})
Successfully added user: { "user" : "admin", "roles" : [ { "role" : "readWrite", "db" : "admin" } ] }
#新增超级管理员用户
>use admin;
>db.createUser({user:"admin",pwd:"test.1234",roles:[{role: "root", db: "admin"}]})
Successfully added user: { "user" : "admin", "roles" : [ { "role" : "root", "db" : "admin" } ] }
3、删除用户
>db.system.users.remove({user:"admin"})
五、mongdb数据库角色
1、内建的角色
数据库用户角色:read、readWrite;
数据库管理角色:dbAdmin、dbOwner、userAdmin;
集群管理角色:clusterAdmin、clusterManager、clusterMonitor、hostManager;
备份恢复角色:backup、restore;
所有数据库角色:readAnyDatabase、readWriteAnyDatabase、userAdminAnyDatabase、dbAdminAnyDatabase
超级用户角色:root // 这里还有几个角色间接或直接提供了系统超级用户的访问(dbOwner 、userAdmin、userAdminAnyDatabase)
内部角色:system
角色说明:
Read:允许用户读取指定数据库
readWrite:允许用户读写指定数据库
dbAdmin:允许用户在指定数据库中执行管理函数,如索引创建、删除,查看统计或访问system.profile
userAdmin:允许用户向system.users集合写入,可以找指定数据库里创建、删除和管理用户
clusterAdmin:只在admin数据库中可用,赋予用户所有分片和复制集相关函数的管理权限。
readAnyDatabase:只在admin数据库中可用,赋予用户所有数据库的读权限
readWriteAnyDatabase:只在admin数据库中可用,赋予用户所有数据库的读写权限
userAdminAnyDatabase:只在admin数据库中可用,赋予用户所有数据库的userAdmin权限
dbAdminAnyDatabase:只在admin数据库中可用,赋予用户所有数据库的dbAdmin权限。
root:只在admin数据库中可用。超级账号,超级权限
2、用户操作
1、新建管理员用户
>use admin
> db.createUser(
{
user: "adminUser",
pwd: “admin123”,
roles: [{role: ”userAdminAnyDatabase”,db:”admin”}]
}
) #结果
> Successfully added user: {
"user" : "admin",
"roles" : [
{
"role" : "userAdminAnyDatabase",
"db" : "admin"
}
]
}
2、创建普通用户
>use foo
>show roles #可以查看角色
> db.createUser(
{
user: "simpleUser",
pwd: “123456”,
roles: [“readWrite”,”dbAdmin”,”userAdmin”]
}
)
3、查看已存在的用户
>db.system.users.find()
4、删除用户
>db.system.users.remove({user:”simpleUser”})
注:在操作用户时,启动mongod服务时尽量不开启授权
3、开启验证
在启动时指定--auth即需要授权才能操作
#开启服务
> mongod --auth --dbpath /home/user1/mongodb/data --logpath /home/user1/mongodb/log/logs --fork
#客户端连接并认证
>mongo
>use foo
>db.auth(“simpleUser”,”123456”)
每次只有认证后才能操作数据
Linux 下Mongdb数据库的更多相关文章
- linux下mysql数据库的操作
本文主要针对linux下mysql数据库的安装,以及数据库的创建和简单的数据库操作进行说明. ①.Mysql数据库的安装: 数据库的安装分为源码安装和rpm安装. 当然对于老手来说需要进行一些自定义的 ...
- Linux下链接数据库图形化工具
(一).Linux环境下mysql的安装.SQL操作 Linux下安装MySQL (rmp --help) 基本步骤:上传软件->检查当前Linux环境是否已经安装,如发现系统自带的,先卸载-& ...
- linux下oracle数据库字符集修改
linux下oracle数据库字符集修改 0.RHEL6.7.oracle11gr2 1.登录oracle.在安装oracle的用户下进入数据库. $ sqlplus / as sysdba 2.查询 ...
- Linux下MySQL数据库主从同步配置
说明: 操作系统:CentOS 5.x 64位 MySQL数据库版本:mysql-5.5.35 MySQL主服务器:192.168.21.128 MySQL从服务器:192.168.21.129 准备 ...
- 记录--linux下mysql数据库问题
本次主要记录一下linux下mysql数据库的一些问题,也是之前经常用到的知识,这里简单总结一些问题,方便自己以后的回顾.原来一直使用的是阿里云的RDS数据库mysql版,主要是因为上次阿里云做活动可 ...
- Linux下MySQL数据库的备份与恢复
Linux下MySQL数据库的备份与恢复 作者:Grey 原文地址: Github 语雀 博客园 基于版本 MySQL5.7 Deepin Linux 15.11 xtrabackup-2.4.18 ...
- linux下oracle数据库的启动
linux下oracle数据库的启动 一.切换oracle用户 命令:su - oracle 二.运行sqlplus命令,进入sqlplus环境 命令:sqlplus /nolog (nolog参数表 ...
- Linux 下,mysql数据库报无法登陆错误:ERROR 1045 (28000): Access denied for use
今天在别人的服务器上登录mysql发现无法登陆(Mysql别人实现安装好的) 密码和用户名都是正确的,但登录后报如下错误: ERROR 1045 (28000): Access denied for ...
- Linux下Mysql数据库备份
今天一同事的电脑无缘无故坏了,找了IT部门检测说是硬盘坏了,数据无法恢复.好悲剧.自己博客也写了好久不容易,要是突然间数据丢了那怎么办!于是写了个数据库自动备份脚本,并创建任务计划,实现每天22:30 ...
随机推荐
- Web Services使用SOAP Header
在Web Services方法进行通信使用SOAP遵循标准的SOAP格式,该格式的一部分是在XML文档中编码的数据.XML文档包含一个Envelope根元素(由必需的Body元素和可选的Header元 ...
- jquery.marquee
http://aamirafridi.com/jquery/jquery-marquee-plugin#examples <script src="/plugins/marquee/j ...
- 扩展支持全选的CheckBox列。
扩展支持全选的CheckBox列. https://www.codeproject.com/articles/42437/toggling-the-states-of-all-checkboxes-i ...
- intel ipp6.0安装过程
由于最近看到一个代码中使用了intel ipp6.0库,了解到,ipp6.0是一个很强大的图像处理库,将其与opencv联合使用,还能够加速opencv的处理,在图像处理的过程中,是一个很重要的工具. ...
- 数据结构之链表(LinkedList)(三)
数据结构之链表(LinkedList)(二) 环形链表 顾名思义 环形列表是一个首尾相连的环形链表 示意图 循环链表的特点是无须增加存储量,仅对表的链接方式稍作改变,即可使得表处理更加方便灵活. 看一 ...
- Android studio如何连接三星手机
打开Android studio,选择Trouble Shoot device connections: 这个菜单项会自动扫描本地已经用USB线连接的设备: 已经成功扫描出了我的Galaxy C7 P ...
- Story of Jerry Wang's Wechat subscription account
As an SAP Techinical Ambassador,Jerry is always willing to share his SAP expertise to various social ...
- js几种数组排序及sort的实现
给出以下数组,并进行排序处理 var arr = new Array('1','3','8','2','3','5'); 1. 插入法排序 Array.prototype.csSort = funct ...
- Yarn介绍(设计理念与基本架构)
Yarn : 新的计算框架,是一个全局资源管理器,负责整个集群的资源管理和分配 一. Yarn产生背景 Hadoop1.0MR有局限性,概括为以下几个方面 : 扩展性差 可靠性差 资 ...
- 记一次SQL PLUS 不能登录的异常处理
记一次SQL PLUS 不能登录的异常处理 现象 通过远程PLSQL Developer 访问数据发现卡死没响应. 通过Sqlplus 访问数据同样hang死在登录界面,且不能通过Ctrl+C取消 [ ...