mongodb使用记录
摘要:简单记录一下mongodb数据库的使用
mongodb安装
运行下命令即可下载mongodb。
# 下载mongodb二进制包
wget https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-ubuntu2204-8.0.8.tgz
# 解压mongodb二进制包
tar -zxvf mongodb-linux-x86_64-ubuntu2204-8.0.8.tgz
# 将bin目录下的二进制文件复制到/usr/bin/目录下下
cp -r -a /root/mongodb-linux-x86_64-ubuntu2204-8.0.8/bin/* /usr/bin/
# 创建数据存放目录,日志存放目录、mongodb配置文件目录。
mkdir -p /etc/mongodb/data /etc/mongodb/log /etc/mongodb/conf
# 创建mongodb配置文件
nano /etc/mongodb/conf/mongodb.conf
mongodb.conf 文件内容如下:
systemLog:
destination: file
path: /etc/mongodb/log/mongodb.log
logAppend: true
storage:
dbPath: /etc/mongodb/data
net:
bindIp: 0.0.0.0
port: 27017
security:
authorization: enabled
processManagement:
fork: true
启动mongodb。
mongod -f /etc/mongodb/conf/mongodb.conf
如果配置不需要密码就能登录mongodb的话,把下面的配置项给注销掉。
security:
authorization: enabled
。
mongosh安装
mongosh是用来连接mongodb的客户端。
# 下载mongosh二进制包
wget https://downloads.mongodb.com/compass/mongosh-2.5.0-linux-x64.tgz
# 解压mongosh二进制包
tar -zxvf mongosh-2.5.0-linux-x64.tgz
# 将bin目录下的进制文件复制到/usr/bin/目录下
cp -r -a /root/mongosh-2.5.0-linux-x64/bin/* /usr/bin
mongosh常用命令
登录数据库
# 连接mongodb
mongosh --host localhost:27017
# 如果设置了authorization: enabled,需要输入用户名和密码进行认证才能操作数据库
db.auth("test2","test145566")
常用命令
# 连接mongodb
mongosh --host localhost:27017
# 将当前数据库切换为admin数据库
use admin
# 打印所有用户信息
admin> show users
# 打印所有数据库名
admin> show dbs
# 打印当前数据库名
admin> show db
# 创建一个test3用户,并赋予root权限
# mongodb是基于数据库授权的,给予哪个用户root角色,该用户就对该数据库具有最高权限
use admin
admin> db.createUser({user: "test3", pwd: "test3145566", roles: ["root"]});
# 连接mongodb
mongosh --host localhost:27017
admin> db.auth("test3","test3145566")
# 切换到mydb数据库,如果mydb数据库不存在自动创建
admin> use mydb
# 创建一个集合test并插入一条数据,这样才会真正创建mydb数据库
mydb> db.test.insert({})
# 创建user1用户赋予mydb数据库的读写权限
mydb> db.createUser({user:"user1",pwd:"123456",roles:[{role:"readWrite",db:"mydb"}]})
关闭mongodb数据库
切记不能使用kill -9关闭,强行关闭有可能启动不起来。
# 方式1
mongosh --host localhost:27017
use admin
db.shutdownServer()
# 方式2
mongod --port=27017 --dbpath=/etc/mongodb/data --shutdown
# 方式3
ps -ef | grep mongod
kill PID
# 方式4
# 如果是mongodb集群的话需要先关闭 mongos->副本集/分片(shardX)->config server
# 粗暴点可以使用下面命令关闭
killall mongos
killall mongod
参考
本作品采用 知识共享署名-相同方式共享 4.0 国际许可协议 进行许可。