千家信息网

Mongodb安装以及账户管理(一)

发表于:2024-10-16 作者:千家信息网编辑
千家信息网最后更新 2024年10月16日,一、MongoDB安装1. wget http://fastdl.mongodb.org/linux/mongodb-linux-x86_64-2.4.1.tgzwget http://downloa
千家信息网最后更新 2024年10月16日Mongodb安装以及账户管理(一)一、MongoDB安装

1. wget http://fastdl.mongodb.org/linux/mongodb-linux-x86_64-2.4.1.tgz
wget http://downloads.mongodb.org/src/mongodb-src-r2.4.1.tar.gz

tar xzvf mongodb-linux-x86_64-2.4.1.tgz
mv mongodb-linux-x86_64-2.4.1 /usr/local/mongodb

建立数据目录以及日志目录
mkdir -p /data/mongodb/db1
mkdir -p /data/mongodb/logs

启动mongodb,如果要保留原来的日志,还需要使用 --logappend 选项

/usr/local/mongodb/bin/mongod --port 27017 --dbpath /data/mongodb/db1/ --logpath /data/mongodb/logs/m1.log --logappend &
或者作为守护进程方式启动

/usr/local/mongodb/bin/mongod --port 27017 --dbpath /data/mongodb/db1/ --logpath /data/mongodb/logs/m1.log --logappend --fork
再或者以配置文件方式启动

cat /etc/mongodb.conf
port = 27017
fork = true
dbpath = /data/mongodb/db1/
logpath = /data/mongodb/logs/m1.log
logappend = true
#auth = true

/usr/local/mongodb/bin/mongod -f /etc/mongodb.conf

netstat -ntpl |grep :3306 tcp 0 0 0.0.0.0:3306
0.0.0.0:* LISTEN 1499/mongod

cat /data/mongodb/db1/mongod.lock
1499

mongodb 的停止

/usr/local/mongodb/bin/mongod --port 27017 --dbpath /data/mongodb/db1/ --logpath /data/mongodb/logs/m1.log --shutdown
或者 kill PID ,千万不能在运行的mongodb发送 kill -9 信号 这样会导致mongodb损坏

再或者
/usr/local/mongodb/bin/mongod -f /etc/mongodb.conf --shutdown


二、配置mongodb

1.添加用户
先连接mongodb /usr/local/mongodb/bin/mongo 127.0.0.1:27017

首先切换到admin库,先建立一个管理员账号 没有加auth情况下
> use admin
> db.addUser("root","123456");

这样就说明 已经成功建立了,然后我们试一下权限。

> show collections
system.indexes
system.users

在没有加--auth的情况下 可以正常访问admin喜爱默认的两个表。
> db.system.users.find()
{ "_id" : ObjectId("5151c8fced3092583ca7c6a5"), "user" : "root", "readOnly" : false, "pwd" :

"34e5772aa66b703a319641d42a47d696" }


把在配置文件或者启动项加上--auth选项再次进入./mongo

> show collections
Wed Mar 27 00:42:57.554 JavaScript execution failed: error: {
"$err" : "not authorized for query on test.system.namespaces",
"code" : 16550

可以看出已经没有访问权限了

我们用自己的密码登陆
> db.auth('root','123456')
1
返回1说明验证成功!

再show collections下就成功了。



我们登录其它表通过测试发现其他的也需要验证
试试super admin登录
> db.auth('root','123456')
Error: 18 { ok: 0.0, errmsg: "auth fails" }
0

返回0验证失败。
其实super admin必须从admin那么登录 然后 再use其它表才可以。

如果想单独访问一个表,用独立的用户名,就需要在那个表里面建相应的user。

/usr/local/mongodb/bin/mongo
MongoDB shell version: 2.4.1
connecting to: test
> use admin
switched to db admin
> db.auth('root','123456')
1
> use test
switched to db test

> db.addUser('test','123456')
{
"user" : "root",
"readOnly" : false,
"pwd" : "34e5772aa66b703a319641d42a47d696",
"_id" : ObjectId("5151d27c4836c71202b7ac37")
}

再登陆 看看

[root@localhost ~]# /usr/local/mongodb/bin/mongo
MongoDB shell version: 2.4.1
connecting to: test
> use test
switched to db test
> db.auth('test','123456')
1
>

返回1说明验证成功。
成功 验证 登录 配置 情况 文件 方式 日志 权限 用户 目录 登陆 管理 两个 信号 再次 密码 数据 用户名 管理员 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 硬件开发软件开发信息技术 山东发展软件开发科技 国家的数据库管理系统 新华三H3C服务器维保价格 史上最漂亮的网络安全手抄报 个人承包软件开发 远程服务器怎么看内存泄漏 查询数据库所有值 对数据库的法律认识 软件开发到底怎么考核 网络安全基础试讲 亿连网络安全技术 深圳erp软件开发联系方式 服务器到期了续费不了怎么办 嘉定区进口网络技术开发价目表 广东商业软件开发服务价格 幼儿网络安全课程 黑龙江服务器电源种类有哪些 河南程序软件开发哪家便宜 软件开发项目用审计吗 桂电的网络安全怎么样 我的世界火车服务器手机版下载 大学网络技术搜题软件 中国交通事故深入研究数据库 树莓派sql数据库 手机网络安全稳定 互联网不算高科技 数据库的角色就是一组与数据库 网络安全知识竞赛答题2020 河南千百多网络技术有限公司
0