第三篇
讲讲安装完mongodb之后的骚操作叭
1.配置mongodb.conf
在mongodb的安装目录下的bin下,创建mongodb.conf,配置文件参数如下
bind_ip = 0.0.0.0 # 本机和192.168.0.3可以访问
port = 27017 # 实例运行在27017端口(默认)
dbpath = /usr/local/mongodb/db # 数据文件夹存放地址(db要预先创建)
logpath = /usr/local/mongodb/logs/27017.log # 日志文件地址
logappend = false # 启动时 添加还是重写日志文件
fork = true # 是否后台运行
auth = false # 关闭校验用户(等创建超级用户之后在开启)
2.启动及开机自启
启动的时候在bin目录执行:./mongod -f mongodb.conf
大概会出现这样(我这个是在~目录下运行的,就要写明conf路径)
[root@localhost ~]# mongod -f /usr/mongodb/mongodb-4.0.1/mongodb.conf
about to fork child process, waiting until server is ready for connections.
forked process: 1689
child process started successfully, parent exiting
开机自启的话,在/etc/rc.local 中,写入/usr/mongodb/mongodb-4.0.1/bin/mongod -f /usr/mongodb/mongodb-4.0.1/mongodb.conf(你得确保已经chmod +x /etc/rc.d/rc.local)
!!!自己的路径不同,文件名不同,要自己修改好哟
3.创建超级用户
启动了之后,运行mongo就可以进入操作了,大概长这样
[root@localhost ~]# mongo
MongoDB shell version v4.0.1
connecting to: mongodb://127.0.0.1:27017
MongoDB server version: 4.0.1
>
在创建普通用户前,先创建一个超级用户(改一改user和pwd就好了)
use admin
db.createUser(
{
user: "your_user_name",
pwd: "your_password",
roles: [ { role: "userAdminAnyDatabase", db: "admin" }, "readWriteAnyDatabase" ]
}
)
成功的话就会出现Successfully added user: 等等等
4.创建普通用户(数据库用户)
创建用户是要有权限的,之前设置了超级用户,登录后,如果要创建新的数据库并创建对应具有读写权限的数据库用户,可以看看下面代码(其他需求比如权限之类的要去再某度一下哟,比较多的权限的)
use test
db.createUser(
{
user: "myTester",
pwd: "xyz123",
roles: [ { role: "readWrite", db: "test" } ]
}
)
use test代表创建test数据库并转入库中,然后执行创建,role: "readWrite"代表的就是读写权限
5.开启校验登录权限
转到步骤一中的配置文件conf,修改auth = true就好了,然后停止mongo服务并重新开启,最直接的方法就是
(centos)ps -aux|grep mongo 得到:
root 1156 0.4 3.4 987404 64416 ? Sl 13:23 0:07 /usr/mongodb/mongodb-4.0.1/bin/mongod -f /usr/mongodb/mongodb-4.0.1/mongodb.conf
杀了root后面的1156:kill -9 1156,然后然后,再开咯
开启后在运行mongo,此时你运行show dbs是会报错的,如果你是超级用户,就
use admin
db.auth('your_user_name','your_password')
返回1则说明对了,如果你是普通用户,就 use 你的权限库名(你不会不知道或者不记得叭,此时不登录一个用户show dbs可是无效的),然后一样db.auth(...)
!!!注意,一定要先use 库名在验证。