ITPub博客

首页 > 数据库 > > MongoDB基本安装教程

MongoDB基本安装教程

作者:浪花小雨滴 时间:2020-05-12 10:32:18 0 删除 编辑

Hello,大家好!在疫情期间,我的激情学习之旅怎么可以落下呢?为此,我看了一本MongoDB和Python相关的书,感觉非常不错!故写一篇安装总结,这实在太简单了,不到半小时就能掌握,实在是有点失礼晒!


本文大纲

1. MongoDB 简介

2. Win10 安装MongoDB

3. RHEL7 安装MongoDB


01 MongoDB简介

非关系型数据库(NoSQL,指的是Not only SQL)有强大的扩展能力,不需要事先定义好表的字段,数据插入速度远超于传统关系型数据库。

MongoDB属于非关系型数据库,其适合存储大量关联性不强的数据。MongoDB是以"库"-"集合"-"文档"-"字段",这与传统关系型数据库的"库"-"表"-"行"-"列"结构非常像。但是,MongoDB不需要预定义表结构,这一点真的很爽,直接插入数据,并且数据的字段可以任意变动,并发写入速度也远远高于传统关系型数据库。


02 Win10安装MongoDB

2.1 下载网址

mongodb.com/download-ce


2.2 安装

不需要勾选"Install MongoDB Compass",在这里用不上!

恭喜你,如果你按照以上的中文路径安装,就会报错,并且让你尝试重启电脑,怎么样,是不是倍儿爽?我还真重启了主机,我晕!

安装数据库怎么需要重启主机呢?这很奇葩,我的电脑一直保持高负荷运转,随时远程工作,处理突发状况!(一本正经,哈哈哈!)

最后,我尝试卸载了刚才的路径,重新使用纯英文路径G:\mongodb\MongoDB,安装成功!


03 RHEL7安装MongoDB

3.1 下载网址

mongodb.com/download-ce

3.2 开始安装

3.2.1 解压安装包

[root@RHEL-INIT ~]#  mkdir -p /mongo/app
[root@RHEL-INIT ~]# cd /mongo/app
[root@RHEL-INIT app]#  tar -zxvf mongodb-linux-x86_64-rhel70-4.0.16.tgz
mongodb-linux-x86_64-rhel70-4.0.16/THIRD-PARTY-NOTICES.gotools
mongodb-linux-x86_64-rhel70-4.0.16/README
mongodb-linux-x86_64-rhel70-4.0.16/THIRD-PARTY-NOTICES
mongodb-linux-x86_64-rhel70-4.0.16/MPL-2
mongodb-linux-x86_64-rhel70-4.0.16/LICENSE-Community.txt
mongodb-linux-x86_64-rhel70-4.0.16/bin/mongodump
mongodb-linux-x86_64-rhel70-4.0.16/bin/mongorestore
mongodb-linux-x86_64-rhel70-4.0.16/bin/mongoexport
mongodb-linux-x86_64-rhel70-4.0.16/bin/mongoimport
mongodb-linux-x86_64-rhel70-4.0.16/bin/mongostat
mongodb-linux-x86_64-rhel70-4.0.16/bin/mongotop
mongodb-linux-x86_64-rhel70-4.0.16/bin/bsondump
mongodb-linux-x86_64-rhel70-4.0.16/bin/mongofiles
mongodb-linux-x86_64-rhel70-4.0.16/bin/mongoreplay
mongodb-linux-x86_64-rhel70-4.0.16/bin/mongod
mongodb-linux-x86_64-rhel70-4.0.16/bin/mongos
mongodb-linux-x86_64-rhel70-4.0.16/bin/mongo
mongodb-linux-x86_64-rhel70-4.0.16/bin/install_compass
[root@RHEL-INIT app]# mv mongodb-linux-x86_64-rhel70-4.0.16 mongodb

3.2.2 创建目录和日志文件

[root@RHEL-INIT app]# mkdir -p /mongo/app/mongodb/data/db
[root@RHEL-INIT app]# mkdir -p /mongo/app/mongodb/log
[root@RHEL-INIT app]# touch /mongo/app/mongodb/log/mongodb.log

3.2.3 创建用户及所属组

[root@RHEL-INIT app]# groupadd mongodb
[root@RHEL-INIT app]#  useradd -g mongodb mongodb
[root@RHEL-INIT app]#  id mongodb
uid=1001(mongodb) gid=1001(mongodb) groups=1001(mongodb)
[root@RHEL-INIT app]#  passwd mongodb
Changing password for user mongodb.
New password: 
BAD PASSWORD: The password is shorter than 8 characters
Retype new password: 
passwd: all authentication tokens updated successfully.

3.2.4 创建配置文件

[root@RHEL-INIT bin]# vi mongodb.conf
#数据文件存放目录
dbpath = /mongo/app/mongodb/data/db

#日志文件存放目录
logpath = /mongo/app/mongodb/log/mongodb.log

#端口
port = 27017

#以守护程序的方式启用,即在后台运行
fork = true

#允许所有的连接
bind_ip=0.0.0.0

auth = true
~
~

3.2.5 授权和加载环境变量

[root@RHEL-INIT bin]# chown -R mongodb:mongodb /mongo/app
[root@RHEL-INIT bin]# cd
[root@RHEL-INIT ~]# su - mongodb
[mongodb@RHEL-INIT ~]$ vi  .bash_profile 
PATH=$PATH:$HOME/.local/bin:$HOME/bin
PATH=$PATH:$HOME/.local/bin:$HOME/bin
# .bash_profile

# Get the aliases and functions
if [ -f ~/.bashrc ]; then
        . ~/.bashrc
fi

# User specific environment and startup programs


export PATH



export MONGODB_HOME=/mongo/app/mongodb
PATH=$PATH:$HOME/.local/bin:$HOME/bin:$MONGODB_HOME/bin
~

".bash_profile" 16L, 253C written                             
[mongodb@RHEL-INIT ~]$ . .bash_profile 

3.2.6 后台启动数据库

[mongodb@RHEL-INIT ~]$ mongod -f /mongo/app/mongodb/bin/mongodb.conf
about to fork child process, waiting until server is ready for connections.
forked process: 70803
child process started successfully, parent exiting

3.2.7 测试

[mongodb@RHEL-INIT ~]$ mongo
MongoDB shell version v4.0.16
connecting to: mongodb://127.0.0.1:27017/?gssapiServiceName=mongodb
Implicit session: session { "id" : UUID("68c53655-af74-429a-be67-0515b818199e") }
MongoDB server version: 4.0.16
Welcome to the MongoDB shell.
For interactive help, type "help".
For more comprehensive documentation, see
        http://docs.mongodb.org/
Questions? Try the support group
        http://groups.google.com/group/mongodb-user

> use adminuse admin
switched to db admin
> db.createUser({user:'test',pwd:'123456',roles:[{role:'root',db:'admin'}]})
Successfully added user: {
        "user" : "test",
        "roles" : [
                {
                        "role" : "root",
                        "db" : "admin"
                }
        ]
}


卖个点子,这能打码吗?

这不是我的公众号,你别信!

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/31537575/viewspace-3123376/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2018-05-16

  • 博文量
    4259
  • 访问量
    40525