centos 安装 Mongodb

MongoDB 在 windows 与 Linux Centos上安装

环境部署一直是一个开发者头疼的事情,原本属于运维的工作,但是有时候不得不我们自己部署,求人不如求己。
技术越来越好,使得版本不停的更新换代,一段时间后,一个版本的部署安装和以往都有所差距,这就对没有经验的开发者产生的困难,而我们能做的可以把它记录下来,让后面的人能够跳过这些坑。

Linux Centos上部署 MongoDB

       1.   在服务器上下载压缩包     wget https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-4.0.0.tgz
       2.   解压压缩包    tar zxvf mongodb-linux-x86_64-4.0.0.tgz
       3.   把解压后的文件夹移动到指定路径  mv mongodb-linux-x86_64-4.0.0 mongodb
       4.   在  /var 中创建 mongodb 的 数据存储与日志文件     
                a.  mkdir  mongodb
                b.  mkdir  mongodb/data
                c.  mkdir  mongodb/logs
                d.  touch mongodb/logs/mongodb.log

                                                                                               data
                                                                                             /
               最终Mongodb 文件存储目录  - / var / mongodb
                                                                                             \
                                                                                               logs  -  mongodb.log                                                                   


       5.   启动 mongodb 服务, 在 / usr / local / mongodb / bin 中 启动
             ./mongod   --dbpath /var/mongodb/data   --logpath /var/mongodb/logs/mongodb.log  --fork
     
              --dbpath 对应数据库数据存储路径 ,  --logpath 对应数据库日志文件路径, --fork 能够让 mongodb 后台运行
     
               启动成功后,我们 通常还要 做数据库的认证,如果不做认证,定期黑客将会家访你的数据库,帮你清理清理。

port=27017 #端口
dbpath=/var/mongodb/data #数据库存文件存放目录
logpath=/var/mongodb/logs/mongodb.log #日志文件存放路径
logappend=true #使用追加的方式写日志
fork=true #以守护进程的方式运行,创建服务器进程
maxConns=100 #最大同时连接数
noauth=true #不启用验证
journal=true #每次写入会记录一条操作日志(通过journal可以重新构造出写入的数据)。

即使宕机,启动时wiredtiger会先将数据恢复到最近一次的checkpoint点,然后重放后续的journal日志来恢复。

storageEngine=wiredTiger #存储引擎有mmapv1、wiretiger、mongorocks
bind_ip=0.0.0.0 #这样就可外部访问了,例如从win10中去连虚拟机中的MongoDB

##也可以使用配置方式启动  ./mongod -f /usr/local/mongodb/mongodb.conf

        *       mongodb 认证,首先我们在 bin 路径下 通过 ./mongo 进入控制台
                      
                ①  在 mongodb 控制台  use admin 我们切换到 admin 数据库
                ②  db.createUser({ user: 'root', pwd: '123456', roles: [  { role: 'root', db: 'admin' } ] }) 创建用户
                     版本不同,创建形式也不一样,有的版本是 db.createUser(), 而有些是db.addUser('root', '123456')

                ③  提示 Successfully 后,创建成功,依然 use admin 在 admin 数据库中,
                      输入 db.shutdownServer() 停止 mongodb 的服务, 
                ④  我们重新在 bin 目录上 启动 mongodb, 
                      ./mongod   --dbpath /var/mongodb/data   --logpath /var/mongodb/logs/mongodb.log  --fork  --auth
                      --auth 开启 mongodb 认证,认证就是通过用户登录的一种方式
                ⑤  启动服务后,我们再 ./mongo 进入控制台  ,  use admin 切换 admin数据库, db.auth('你的用户', '密码')
                      如果返回 1 ,则认证成功 , 0 失败。
                ⑥  这种认证用于控制台操作数据库时,认证。

windows上部署 MongoDB

          版本是    mongodb-win32-x86_64-2008plus-ssl-3.6.4-signed.msi
          ![image.png](https://upload-images.jianshu.io/upload_images/1965799-13b69a51f3354495.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)

          选择 custom ,然后下一步,安装结束后,我们会得到一个 mongodb 文件, 进入 bin 目录,  windows 安装 mongodb 需要注意,需要先创建 mongodb 的服务 ,然后启动服务

                ①  创建 mongodb 的数据存储文件 与 日志文件,文件结构参考 以上 linux 安装
                ②  接下来,我们在 bin 目录启动并创建 mongodb 服务 ( 切记!一定要用 管理员身份启动 cmd ) 
                      ./mongod --dbpath xxxx  --logpath xxxx  --install -serviceName MongoDB
                      新版的mongodb ,在创建 mongodb 日志文件有所区别, 
                      mongodb.log 用户无需手动创建,否则会报错,已存在 is exist
                      如果回车后,没有反应,光标继续闪着,那就说明成功了,
                      这样,我们就创建了 mongodb 服务, 进入计算机管理 - 服务中启动 MongoDB 服务,如果启动报错, 
                      像譬如错误 1053 这种情况,可能是你没有用到管理员身份启动创建,或者 你可以看下 数据库数据存储文件目录
                       mongodb /data 在启动时mongodb 没有自动生成任何数据文件,导致启动错误。
                      
                ③  启动成功后,环境部署基本完成一大半了,接下来开始数据库的认证
                ④  做认证前,先不要开启认证,先 ./mongo 启动控制台,进入控制台后  use admin,
                      db.createUser({ user: 'root', pwd: '123456', roles: [  { role: 'root', db: 'admin' } ] }) 创建用户
                      版本不同,创建形式也不一样,有的版本是 db.createUser(), 而有些是db.addUser('root', '123456')
                ⑤  创建好角色后,把 windows 服务里的 MongoDB 删了, 以 管理员身份 打开 CMD 输入
                      sc delete MongoDB ,删除成功后,我们重新启动 MongoDB 并且 创建服务,在创建服务的同时开启
                      认证, ./mongod --dbpath xxxx  --logpath xxxx  --install -serviceName MongoDB --auth
                ⑥  启动后,进入 ./mongo 控制台  use admin, db.auth(xx,xx) 测试 是否认证成功


  如有错误,在下方评论我吧。


最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 196,264评论 5 462
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 82,549评论 2 373
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 143,389评论 0 325
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 52,616评论 1 267
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 61,461评论 5 358
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 46,351评论 1 273
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 36,776评论 3 387
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 35,414评论 0 255
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 39,722评论 1 294
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 34,760评论 2 314
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 36,537评论 1 326
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 32,381评论 3 315
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 37,787评论 3 300
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,030评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 30,304评论 1 252
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 41,734评论 2 342
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 40,943评论 2 336

推荐阅读更多精彩内容