openEuler安装mongodb
1.下载安装包
cd /home/data
wget https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-rhel80-6.0.2.tgz
wget https://downloads.mongodb.com/compass/mongodb-mongosh-1.6.0.x86_64.rpm
2.解压安装包
tar -zxvf /home/data/mongodb-linux-x86_64-rhel80-6.0.2.tgz
mv /home/data/mongodb-linux-x86_64-rhel80-6.0.2 /home/data/mongodb
3.重命名并创建目录
mkdir /home/data/mongodb/{data,logs,conf}
touch /home/data/mongodb/logs/mongodb.log
cp /home/data/mongodb/bin/* /usr/local/bin/
4.修改配置文件
cat > /home/data/mongodb/conf/mongodb.conf << EOF
#自己安装的路径
dbpath=/home/data/mongodb/data
#自己安装的路径
logpath=/home/data/mongodb/logs/mongodb.log
logappend=true
journal=true
quiet=true
#端口号
port=27017
# 对访问 IP 地址不做限制,默认为本机地址
bind_ip=0.0.0.0
# 以守护进程的方式启用,即在后台运行
fork=true
# 所有客户端都可以访问
bind_ip_all=true
EOF
5.修改环境变量
vim /etc/profile
export MONGODB_HOME=/home/data/mongodb
export PATH=$PATH:$MONGODB_HOME/bin
#环境变量生效
source /etc/profile
6.启动MongoDB
chmod -R 777 /home/data/mongodb/bin
cd /home/data/mongodb/bin
./mongod -f /home/data/mongodb/conf/mongodb.conf
# 后台启动就是以守护进程的方式启动 MongoDB,命令中添加 --fork 即可。
mongod --dbpath /home/data/mongodb/data --logpath /home/data/mongodb/logs/mongodb.log --logappend --port 27017 --bind_ip 0.0.0.0 --fork
7.安装mongosh
rpm -ivh /home/data/mongodb-mongosh-1.6.0.x86_64.rpm
8.使用 mongosh 进入数据库,exit 退出
mongosh
9.切换到admin,添加用户
use admin
db.createUser( {user: "admin",pwd: "hn#28099668",roles: [ { role: "userAdminAnyDatabase", db: "admin" } ]})
db.createUser({"user":"sysAdmin","pwd":"hn28099668","roles":["root"]})
db.auth('admin','hn#28099668')
10.创建(切换)一个数据库(uav)
use uav
db.uav.insert({"name":"测试"})
11.为数据库创建一个用户,并分配读写权限
# 注意角色的库要选admin的,否则无法连接
db.createUser({user: "uavAdmin",pwd: "hn#8099668",roles: [{ role: "readWrite", db: "admin" }]})
db.createUser( {user: "admin",pwd: "hn#28099668",roles: [ { role: "userAdminAnyDatabase", db: "admin" } ]})
db.createUser({user:"uavAdmin", pwd:"hn#28099668", roles: [{role:"readWrite", db: "uav"}]})
db.auth('uavAdmin','hn#28099668')
# 更新用户角色
db.updateUser("uavAdmin",{roles:[{role:"readWrite",db:"admin"}]})
12.查询所有用户
db.system.users.find()