阿里云-云小站(无限量代金券发放中)
【腾讯云】云服务器、云数据库、COS、CDN、短信等热卖云产品特惠抢购

Red Hat Enterprise Linux6.5 下MongoDB安装

180次阅读
没有评论

共计 5102 个字符,预计需要花费 13 分钟才能阅读完成。

伴随着互联网应用的迅猛推广和各种开源产品的深入,各种非关系型数据 NoSQL 产品近几年的发展比较迅猛。针对特定行业、领域和应用场景,脱离关系型数据模型体系的 NoSQL 家族,已经逐步深入各行各业,逐步被技术应用领域所接受。

MongoDB 由于自身基于文档(Document)和灵活的 Schema 策略模型,以及较为成熟的管理应用功能体系和开源特性,在国内正变得越来越流行,成为 IT 数据架构选型的标准之一。本篇主要介绍在 Linux 操作系统体系下,进行简单的 MongoDB 安装方法。

1、环境介绍

Linux 环境下的应用安装,主要有几种标准方式:yum 类型一体式安装,设置好 repository,最新版本安装和依赖包一气呵成;自己解决包依赖问题,使用 rpm 甚至 zip 压缩文件直接安装;最后一种比较“高级”,是获取到软件源代码,在操作系统层面直接编译安装。本篇中,笔者使用第二种压缩文件的方式,进行基础安装。环境使用 Red Hat Enterprise Linux6.5 版本。

[root@Oracle-test /]# cat /etc/RedHat-release 

Red Hat Enterprise Linux Server release 6.5 (Santiago)

从 MongoDB 官方网站下载到对应的安装文件。

[root@oracle-test upload]# ls -l

total 98124

-rw-r–r–. 1 root root 100477926 Jul 13 22:39 mongodb-linux-x86_64-rhel62-3.4.5.tgz

2、安装系统

同 Oracle 和 MySQL 一样,我们尽量不使用 root 用户作为数据库运行主体。最好创建专门的数据库用户帐号。

[root@oracle-test /]# groupadd mongodb

[root@oracle-test /]# useradd -g mongodb mongodb

[root@oracle-test /]# id mongodb

uid=501(mongodb) gid=501(mongodb) groups=501(mongodb)

创建单独的目录,防止解压文件。

[root@oracle-test /]# mkdir /mongodb

[root@oracle-test /]# chown -R mongodb:mongodb mongodb

[root@oracle-test /]# ls -l | grep mongodb

drwxr-xr-x.  2 mongodb mongodb  4096 Jul 13 22:38 mongodb

[root@oracle-test upload]# cp mongodb-linux-x86_64-rhel62-3.4.5.tgz /mongodb/

解压文件:

[root@oracle-test mongodb]# tar zxvf mongodb-linux-x86_64-rhel62-3.4.5.tgz 

mongodb-linux-x86_64-rhel62-3.4.5/README

(篇幅原因,有省略……)

mongodb-linux-x86_64-rhel62-3.4.5/bin/mongod

mongodb-linux-x86_64-rhel62-3.4.5/bin/mongos

mongodb-linux-x86_64-rhel62-3.4.5/bin/mongo

设置数据库用户帐号权限。

[root@oracle-test mongodb]# chown -R mongodb:mongodb *

[root@oracle-test mongodb]# ls -l

total 4

drwxr-xr-x. 3 mongodb mongodb 4096 Jul 13 22:41 mongodb-linux-x86_64-rhel62-3.4.5

进入解压目录,就可以看到主要的 bin 文件夹,包括了大部分的功能组件。其中,mongod 是数据库实例运行程序进程,是 Mongodb 的核心。Mongo 也称为 mongo shell,是类似于 sqlplus 的客户端程序。其他诸如导入导出、备份还原,基本与其他商用数据库差异不大。

[root@oracle-test mongodb-linux-x86_64-rhel62-3.4.5]# cd bin

[root@oracle-test bin]# ls -l

total 277044

-rwxr-xr-x. 1 mongodb mongodb 10359081 Jun 14 05:37 bsondump

-rwxr-xr-x. 1 mongodb mongodb 29860072 Jun 14 06:02 mongo

-rwxr-xr-x. 1 mongodb mongodb 54387648 Jun 14 06:02 mongod

-rwxr-xr-x. 1 mongodb mongodb 12696783 Jun 14 05:38 mongodump

-rwxr-xr-x. 1 mongodb mongodb 10711297 Jun 14 05:38 mongoexport

-rwxr-xr-x. 1 mongodb mongodb 10593233 Jun 14 05:37 mongofiles

-rwxr-xr-x. 1 mongodb mongodb 10867956 Jun 14 05:38 mongoimport

-rwxr-xr-x. 1 mongodb mongodb 10361065 Jun 14 05:38 mongooplog

-rwxr-xr-x. 1 mongodb mongodb 53756680 Jun 14 06:02 mongoperf

-rwxr-xr-x. 1 mongodb mongodb 14000016 Jun 14 05:39 mongoreplay

-rwxr-xr-x. 1 mongodb mongodb 14054073 Jun 14 05:38 mongorestore

-rwxr-xr-x. 1 mongodb mongodb 30523368 Jun 14 06:02 mongos

-rwxr-xr-x. 1 mongodb mongodb 10931198 Jun 14 05:37 mongostat

-rwxr-xr-x. 1 mongodb mongodb 10557955 Jun 14 05:38 mongotop

3、运行和连接数据库

为了方便起见,将 mongodb 的 bin 路径,添加到 mongodb 用户的 PATH 变量中。

[root@oracle-test bin]# su – mongodb

[mongodb@oracle-test ~]$ vi .bash_profile 

PATH=$PATH:$HOME/bin

PATH=$PATH:/mongodb/mongodb-linux-x86_64-rhel62-3.4.5/bin

export PATH

~

第一次启动,直接从命令行中执行 mongod 命令,启动数据库。

[mongodb@oracle-test ~]$ mongod

2017-07-13T22:47:36.872+0800 I CONTROL  [initandlisten] MongoDB starting : pid=18996 port=27017 dbpath=/data/db 64-bit host=oracle-test

2017-07-13T22:47:36.872+0800 I CONTROL  [initandlisten] db version v3.4.5

2017-07-13T22:47:36.872+0800 I CONTROL  [initandlisten] git version: 

(篇幅原因,有省略……)

2017-07-13T22:47:36.872+0800 I STORAGE  [initandlisten] exception in initAndListen: 29 Data directory /data/db not found., terminating

2017-07-13T22:47:36.872+0800 I NETWORK  [initandlisten] shutdown: going to close listening sockets…

2017-07-13T22:47:36.872+0800 I NETWORK  [initandlisten] shutdown: going to flush diaglog…

2017-07-13T22:47:36.872+0800 I CONTROL  [initandlisten] now exiting

2017-07-13T22:47:36.872+0800 I CONTROL  [initandlisten] shutting down with code:100

数据库尝试启动之后停止了,原因是数据目录没有。默认数据目录是 /data/db,Windows 环境则是 C:\data\db。如果需要自行指定目录,需要使用 mongod 参数配置。我们进行添加:

[root@oracle-test /]# mkdir -p /data/db

[root@oracle-test /]# chown -R mongodb:mongodb /data

[root@oracle-test /]# ls -l | grep data

drwxr-xr-x.  3 mongodb mongodb  4096 Jul 13 22:49 data

操作成功:

[mongodb@oracle-test ~]$ mongod

2017-07-13T22:50:24.098+0800 I CONTROL  [initandlisten] MongoDB starting : pid=19087 port=27017 dbpath=/data/db 64-bit host=oracle-test

2017-07-13T22:50:24.098+0800 I CONTROL  [initandlisten] db version v3.4.5

(篇幅原因,有省略……)

2017-07-13T22:50:24.249+0800 I NETWORK  [thread1] waiting for connections on port 27017

从远程客户端连接,正常。

:\Users\admin>mongo –host 172.16.19.143

MongoDB shell version v3.4.5

connecting to: mongodb://172.16.19.143:27017/

MongoDB server version: 3.4.5

Server has startup warnings:

2017-07-13T23:31:25.215+0800 I STORAGE  [initandlisten]

(篇幅原因,有省略…….)

2017-07-13T23:31:25.771+0800 I CONTROL  [initandlisten]

>

4、结论

笔者作为初学者,简单创建了基础 Mongodb 环境,后续还有诸如启动场景、日志提示、权限登录等内容需要进行配置。相当于万里长征走完第一步吧。

更多 MongoDB 相关教程见以下内容

MongoDB 文档、集合、数据库简介  http://www.linuxidc.com/Linux/2016-12/138529.htm

MongoDB 3 分片部署及故障模拟验证  http://www.linuxidc.com/Linux/2016-12/138529.htm

Linux CentOS 6.5 yum 安装 MongoDB  http://www.linuxidc.com/Linux/2016-12/137790.htm

CentOS 7 yum 方式快速安装 MongoDB  http://www.linuxidc.com/Linux/2016-11/137679.htm

MongoDB 的查询操作  http://www.linuxidc.com/Linux/2016-10/136581.htm

Ubuntu 16.04 中安装 MongoDB3.4 数据库系统  http://www.linuxidc.com/Linux/2017-07/145526.htm

MongoDB 3.4 远程连接认证失败  http://www.linuxidc.com/Linux/2017-06/145070.htm

MongoDB 权威指南第 2 版 PDF 完整带书签目录 下载见 http://www.linuxidc.com/Linux/2016-12/138253.htm

MongoDB 的详细介绍:请点这里
MongoDB 的下载地址:请点这里

本文永久更新链接地址:http://www.linuxidc.com/Linux/2017-07/145686.htm

正文完
星哥说事-微信公众号
post-qrcode
 0
星锅
版权声明:本站原创文章,由 星锅 于2022-01-22发表,共计5102字。
转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。
【腾讯云】推广者专属福利,新客户无门槛领取总价值高达2860元代金券,每种代金券限量500张,先到先得。
阿里云-最新活动爆款每日限量供应
评论(没有评论)
验证码
【腾讯云】云服务器、云数据库、COS、CDN、短信等云产品特惠热卖中