Mongodb安装以及账户管理(一)
发表于:2025-01-20 作者:千家信息网编辑
千家信息网最后更新 2025年01月20日,一、MongoDB安装1. wget http://fastdl.mongodb.org/linux/mongodb-linux-x86_64-2.4.1.tgzwget http://downloa
千家信息网最后更新 2025年01月20日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说明验证成功。
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安全错误
数据库的锁怎样保障安全
郑州电商软件开发哪里有
凯迪网络安全教育
软件开发公司选址怎么选
几句话总结信息网络安全
asp数据库中间件
数据库设计职业规划
互联网科技访谈
大话西游2服务器怎么取名字
河南省教育厅高校网络安全
屏幕共享软件开发好吗
监控总控管理服务器
批量管理服务器远程软件
线上网络技术
武汉网络安全国家基地
公安数据库能更改吗
广西科技大学有互联网专业吗
中国网络安全应急条例
我的世界基岩服务器教学
es 局域网服务器
数据库小程序
湖南科技大学网络服务器地址
服务器管理器管理事件错误
韩百川服务器
数据库什么情况下进行完整性备份
绝地求生刺激战场服务器设置
德国药品数据库
小米有品服务器怎么样
中国赛宝软件开发中心测试
网络技术与人际关系 漫画
数据库中哪个命令是全部选出