MongoDB入门,Linux从0开始安装MongoDB

01.MongoDB下载安装

下载地址:https://www.mongodb.com/download-center/community

  1. 下载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
    
  2. 启动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:指定配置文件
  3. 创建配置文件并添加配置

    创建配置文件

    [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用户权限管理

  1. 创建管理员用户

    > use admin;
    switched to db admin
    > db.createUser({"user":"admin","pwd":"10086","roles":["root"]})
    Successfully added user: { "user" : "admin", "roles" : [ "root" ] }
    
  2. 验证用户信息

    > db.auth("admin","10086")
    1
    
  3. 查看用户信息

    > db.getUsers()
    [
            {
                    "_id" : "admin.admin",
                    "user" : "admin",
                    "db" : "admin",
                    "roles" : [
                            {
                                    "role" : "root",
                                    "db" : "admin"
                            }
                    ],
                    "mechanisms" : [
                            "SCRAM-SHA-1",
                            "SCRAM-SHA-256"
                    ]
            }
    ]
    
  4. 修改密码

    db.changeUserPassword("admin","123456")
    
  5. 以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

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值