01.MongoDB下载安装
下载地址:https://www.mongodb.com/download-center/community
-
下载MongoDB并且解压
# MongoDB下载 [root@hadoop100 opt]$ wget https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-4.0.5.tgz # MongoDB解压 [root@hadoop100 opt]$ tar -zxvf mongodb-linux-x86_64-4.0.5.tgz
-
启动mongodb
[root@hadoop100 mongodb-linux-x86_64-4.0.5]$ ./bin/mongod --dbpath=/data/db/
报错
2022-06-20T22:30:48.288+0800 I CONTROL [initandlisten] MongoDB starting : pid=69239 port=27017 dbpath=/data/dp/ 64-bit host=hadoop100 2022-06-20T22:30:48.288+0800 I CONTROL [initandlisten] db version v4.0.5 2022-06-20T22:30:48.288+0800 I CONTROL [initandlisten] git version: 3739429dd92b92d1b0ab120911a23d50bf03c412 2022-06-20T22:30:48.288+0800 I CONTROL [initandlisten] allocator: tcmalloc 2022-06-20T22:30:48.288+0800 I CONTROL [initandlisten] modules: none 2022-06-20T22:30:48.288+0800 I CONTROL [initandlisten] build environment: 2022-06-20T22:30:48.288+0800 I CONTROL [initandlisten] distarch: x86_64 2022-06-20T22:30:48.288+0800 I CONTROL [initandlisten] target_arch: x86_64 2022-06-20T22:30:48.288+0800 I CONTROL [initandlisten] options: { storage: { dbPath: "/data/db/" } } 2022-06-20T22:30:48.289+0800 I STORAGE [initandlisten] exception in initAndListen: NonExistentPath: Data directory /data/dp/ not found., terminating 2022-06-20T22:30:48.289+0800 I NETWORK [initandlisten] shutdown: going to close listening sockets... 2022-06-20T22:30:48.289+0800 I NETWORK [initandlisten] removing socket file: /tmp/mongodb-27017.sock 2022-06-20T22:30:48.289+0800 I CONTROL [initandlisten] now exiting 2022-06-20T22:30:48.289+0800 I CONTROL [initandlisten] shutting down with code:100
原因:/data/db/不存在,MongoDB不会自动创建目录/data/db/,所以启动MongoDB前要创建目录
#创建数据库目录 [root@hadoop100 mongodb-linux-x86_64-4.0.5]$ mkdir -p /data/db #再次启动MongoDB [root@hadoop100 mongodb-linux-x86_64-4.0.5]$ ./bin/mongod --dbpath=/data/db/ #...启动成功 2022-06-20T22:42:23.469+0800 I FTDC [initandlisten] Initializing full-time diagnostic data capture with directory '/data/db/diagnostic.data' 2022-06-20T22:42:23.470+0800 I NETWORK [initandlisten] waiting for connections on port 27017
启动命令参数说明
- dbpath:数据库目录,默认/data/db
- port: 监听的端口,默认27017
- bind_ip: 监听IP地址,默认全部可以访问
- fork: 是否已后台启动的方式登陆
- logpath: 日志路径
- logappend: 是否追加日志
- auth:是开启用户密码登陆
- config:指定配置文件
-
创建配置文件并添加配置
创建配置文件
[root@hadoop100 mongodb-linux-x86_64-4.0.5]$ vim mongo.conf
添加配置
dbpath=/data/db/ port=27017 bind_ip=0.0.0.0 fork=true logpath = /data/db/mongodb.log logappend = true auth=false
通过配置文件启动
[root@hadoop100 mongodb-linux-x86_64-4.0.5]$ ./bin/mongod -f mongo.conf about to fork child process, waiting until server is ready for connections. forked process: 19997 child process started successfully, parent exitin
查看MongoDB的启动进程
[root@hadoop100 mongodb-linux-x86_64-4.0.5]$ ps -ef | grep mongo root 19997 1 0 22:50 ? 00:00:06 ./bin/mongod -f mongo.conf root 43700 2898 0 23:08 pts/0 00:00:00 grep --color=auto mongo
02.Mongo Shell
操作MongoDB的一个客户端
# 指定主机和端口的方式启动 ./bin/mongo --host=主机IP --port=端口
[root@hadoop100 mongodb-linux-x86_64-4.0.5]$ ./bin/mongo --port=27017
MongoDB shell version v4.0.5
connecting to: mongodb://127.0.0.1:27017/?gssapiServiceName=mongodb
Implicit session: session { "id" : UUID("0d998f27-0bbf-4f8f-8c82-0425e4725312") }
#日志信息......
> show dbs; #查看数据库命令
admin 0.000GB
config 0.000GB
local 0.000GB
退出:Ctrl+C
03.MongoDB用户权限管理
-
创建管理员用户
> use admin; switched to db admin > db.createUser({"user":"admin","pwd":"10086","roles":["root"]}) Successfully added user: { "user" : "admin", "roles" : [ "root" ] }
-
验证用户信息
> db.auth("admin","10086") 1
-
查看用户信息
> db.getUsers() [ { "_id" : "admin.admin", "user" : "admin", "db" : "admin", "roles" : [ { "role" : "root", "db" : "admin" } ], "mechanisms" : [ "SCRAM-SHA-1", "SCRAM-SHA-256" ] } ]
-
修改密码
db.changeUserPassword("admin","123456")
-
以auth 方式启动mongod,需要添加auth=true 参数 ,mongdb 的权限体系才会起作用:
[root@hadoop100 mongodb-linux-x86_64-4.0.5]# ./bin/mongod -f mongo.conf --auth about to fork child process, waiting until server is ready for connections. forked process: 48300 child process started successfully, parent exiting
04.MongoDB可视化工具NoSQLBooster
网盘链接
链接:https://pan.baidu.com/s/1wO7yW6cQ8Zj0rZYF9jbhfg 提取码:7av5
–来自百度网盘超级会员V3的分享
NoSQLBooster链接MongoDB
-
输入Ip地址
-
输入用户名和密码
-
连接成功
还有其它可视化工具,如MongoDB Compass Community
05.SpringBoot操作MongoDB
https://blog.csdn.net/qq_46237746/article/details/124918465