部署MongoDB
官网: https://www.mongodb.com/download-center/community
二进制部署
wget -c https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-4.0.6.tgz
# 下载慢可用迅雷
groupadd mongodba
useradd -g mongodba -s /sbin/nologin -d /usr/local/mongodb -M mongodba
## 创建mongodb用户
tar zxvf mongodb-linux-*.tgz
mkdir /usr/local/mongodb/
mv mongodb-linux-*/* /usr/local/mongodb/
## 解压文件
chown -R mongodba:mongodba /usr/local/mongodb
添加PATH变量
vim /etc/profile
export MONGO_HOME=/usr/local/mongodb
PATH=$PATH:$MONGO_HOME/bin
source /etc/profile #载入变量
创建mongo数据目录
mkdir /data/mongodb
chown -R mongodba:mongodba /data/mongodb
配置文件
/etc/mongo.conf
port=27017
dbpath=/data/mongodb
logpath=/data/mongodb/mongodb.log
logappend=true
fork=true
journal=true
bind_ip=0.0.0.0
#auth=true
unixSocketPrefix=/data/mongodb # 套接字文件路径,默认/tmp
nounixsocket = false # 默认为false,有生成socket套接字文件
手动启动
mongod -f /etc/mongo.conf
# 启动
操作
mongo # 登入数据库
use admin
# 切换到admin数据库
db.createUser({ user: "useradmin", pwd: "adminpassword", roles: [{ role: "userAdminAnyDatabase", db: "admin" }] })
# 创建管理员账户
db.createUser({user: 'root', pwd: '123456', roles: ['root']})
# 内置角色拥有最大权限
参考概念: https://www.cnblogs.com/zhaoyang-1989/p/7025864.html
使用
常用命令
mongo #默认登录
mongo --port=27017 --host=127.0.0.1 #登录参数
show dbs # 查看库
use admin # 进入数据库
show users # 查看当前库下的用户授权
db.auth("root","xxxx") # 开启认证后的登录
新建和删除库
use runoob
db
db.runoob.insert({"name":"菜鸟教程"})
# 需要向 runoob 数据库插入一些数据才能显示db
show dbs # 查看所有库
db.dropDatabase() # 进入指定库删除
删除集合
use runoob # 进入库
show tables # 查看表
db.runoob.drop() # 删除表