MongoDB单节点部署与基本操作

MongoDB 7.0 单节点部署 与 MongoDB shell基本操作

部署准备:

  1、操作系统:CentOS7.9 ,数据文件系统挂载至/data目录下。

  2、在操作系统中,创建一个mongod的用户和用户组,并配置其sudo权限,如果使用root用户可以不考虑准备此项。

  3、mongodb服务二进制包:mongodb-linux-x86_64-rhel70-7.0.14.tgz 。 下载地址:https://www.mongodb.com/try/download/community

  4、mongodb shell二进制包:mongosh-2.3.0-linux-x64.tgz。下载地址:https://www.mongodb.com/try/download/shell

  

部署mongodb

  1、解压mongodb服务包,移动至/data

sudo tar zxf mongodb-linux-x86_64-rhel70-7.0.14.tgz 
sudo mv mongodb-linux-x86_64-rhel70-7.0.14 /data/mongodb

  

  2、创建数据目录和日志目录

sudo mkdir /data/mongodb/{data,logs}

  

  3、创建配置文件

cat > /data/mongodb/mongodb.conf <<EOF
storage:
   dbPath: "/data/mongodb/data"
systemLog:
   destination: file
   path: "/data/mongodb/logs/mongod.log"
   logAppend: true
processManagement:
   fork: true
net:
   bindIp: 0.0.0.0
   port: 27017
security:
    authorization: enabled
EOF

  

  4、创建systemd管理文件

cat > /usr/lib/systemd/system/mongodb.service <<EOF
[Unit]
Description=MongoDB
After=network.target

[Service]
Type=forking
ExecStart=/data/mongodb/bin/mongod -f /data/mongodb/mongodb.conf

[Install]
WantedBy=multi-user.target
EOF

  

  5、启动mongodb

sudo systemctl start mongodb
sudo systemctl enable mongodb

 

MongoDB shell基本操作

更多操作参考官方文档:https://www.mongodb.com/zh-cn/docs/manual/crud/

一、部署mongosh

  1、解压mongosh二进制包,移动至/data目录

tar zxf mongosh-2.3.0-linux-x64.tgz
sudo mv mongosh-2.3.0-linux-x64 /data/mongosh

  

  2、配置环境变量

echo 'export PATH=/data/mongosh/bin:$PATH'  >> /home/mongod/.bashrc
source /home/mongod/.bashrc

 

二、MongoDB shell基本操作

  1、使用mongsh登陆Mongodb

[mongod@MongoDB ~]$ mongosh
Current Mongosh Log ID: 66d907153a28da6e485e739b
Connecting to:          mongodb://127.0.0.1:27017/?directConnection=true&serverSelectionTimeoutMS=2000&appName=mongosh+2.3.0
Using MongoDB:          7.0.14
Using Mongosh:          2.3.0

For mongosh info see: https://www.mongodb.com/docs/mongodb-shell/

 
Deprecation warnings:
  - Using mongosh on the current operating system is deprecated, and support may be removed in a future release.
See https://www.mongodb.com/docs/mongodb-shell/install/#supported-operating-systems for documentation on supported platforms.
test>

 

  2、创建管理员账户

use admin
db.createUser({
  user: "admin",
  pwd: passwordPrompt(), 
  roles: [ { role: "root", db: "admin" } ]
})

 

  3、在admin数据库中进行身份认证

db.auth("admin",passwordPrompt())

 

  4、查询所有数据库

show dbs;

 

  5、创建test数据库,并在数据库中创建一个mytest集合并向mytest集合中插入一条测试数据。

use test
db.mytest.insertOne(
   { key: "test", value: 100 }
)

 

  6、创建一个test用户,让该用户只能对test数据库具有读写权限。

use test
db.createUser({
  user: "test",
  pwd: passwordPrompt(),
  roles: [
    { role: "readWrite", db: "test" }
  ]
})

 

  7、使用test用户重新登陆,进入test数据库,并查询mytest集合中的数据。

db.mytest.find( { key: "test" } )

  

  8、再新增一条数据

db.mytest.insertOne(
   { name: "test", value: 100 }
)

 

  9、查询mytest集合所有数据

db.mytest.find()

 

  10、修改一条数据

db.mytest.updateOne(
   { name: "test" },
   {
     $set: { value: "PPP" }
   }
)

  

  11、删除一条数据

db.mytest.deleteMany({ name : "test" })

  

  12、删除mytest集合中所有数据

db.mytest.deleteMany({})

 

  13、查询test数据库中的所有集合

show collections

 

  14、删除mytest集合

db.mytest.drop()

 

  15、删除test数据库(需要登陆管理员用户)

db.dropDatabase()

 

posted @ 2024-09-05 09:58  难止汗  阅读(175)  评论(0编辑  收藏  举报