Mongodb安装以及账户管理(一)
发表于:2026-11-01 作者:千家信息网编辑
千家信息网最后更新 2026年11月01日,一、MongoDB安装1. wget http://fastdl.mongodb.org/linux/mongodb-linux-x86_64-2.4.1.tgzwget http://downloa
千家信息网最后更新 2026年11月01日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安全错误
数据库的锁怎样保障安全
天津市摩尔互联网科技
圆梦互联网科技
互联网与科技发展
互联网科技社
北京互联网科技
科技与互联网发展
互联网未来科技
紫鲸互联网科技
致聘互联网科技
互联网 新科技
互联网科技公司名称
互联网科技股午盘股票涨跌
深圳互联网科技怎么样
博兴的互联网电子科技公司
北京三清互联网科技
互联网科技产品
互联网科技创新服务
广州市恰铎互联网科技有限公司
上海科技产业互联网平台
万物互联网智能科技
科技平台互联网
互联网巨头反垄断金融科技
互联网科技卖菜
金融科技创新监管互联网金融
碳银互联网科技有限公司
掌上梦互联网科技
长亮科技互联网金融
老年人脱离互联网科技的作文
互联网科技与管理
唯美互联网科技