简介

Mean是JavaScript的全栈开发框架。更多介绍

用MongoDB实现持久数据的存储是Mean Web全栈开发中的一部分。

MongoDB是一个介于关系数据库和非关系数据库之间的产品,是非关系数据库当中功能最丰富,最像关系数据库的。它的特点是高性能、易部署、易使用,存储数据非常方便。

MongoDB的学习资料可参考:

MongoDB中文社区

上一节介绍了NoSQL Manager for MongoDB客户端管理工具连接本地数据库及使用方法,这一节介绍MongoDB在Linux上的安装及连接。

Linux下安装MongoDB

因为本地环境问题,我开发的时候一般喜欢直接连接到远程的私人服务器中,接下来让我们来尝试一下MongoDB在Linux上的安装、配置及连接。

OS:Centos 7.2

安装包下载地址:点击这里查看

1.下载并解压:

curl -O https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-rhel70-3.4.4.tgz
tar -zxvf mongodb-linux-x86_64-rhel70-3.4.4.tgz

2.将解压包移动到指定目录并添加路径:

(/usr通常只包含系统发行时自带的程序,而/usr/local则是本地系统管理员用来自由添加程序的目录)

MongoDB 的可执行文件位于 bin 目录下,所以将其添加到 PATH 路径中:

mv  mongodb-linux-x86_64-rhel70-3.4.4/ /usr/local/mongodb
export PATH=/usr/local/mongodb/bin:$PATH

3.MongoDB中的数据库目录必须要手动创建,一般是在MongoDB目录下创建data/db文件夹和logs文件:

cd /usr/local/mongodb
mkdir -p data/db
touch logs

启动MongoDB及问题

1.安装及配置完之后,在bin目录下运行:

cd bin
./mongod --dbpath ../data/db

如果看到这句话则运行成功:[thread1] waiting for connections on port 27017

2.在bin下面输入以下命令即可对MongoDB进行后台管理

./mongo

比如插入:

> db.runoob.insert({x:10})
WriteResult({ "nInserted" : 1 })
> db.runoob.find()
{ "_id" : ObjectId("5604ff74a274a611b0c990aa"), "x" : 10 }
>

注意的问题:

1.如果在启动的时候遇到:

exception in initAndListen: 29 Data directory /data/db not found., terminating

说明指定的数据库路径不对,

出现上面这个错误是因为 /data/db 目录不存在,若启动时,不指定任何参数, MongoDB 会默认使用 /data/db 目录存储数据,我们可以使用 --dbpath 来指定其它的路径,比如:

mongod --dbpath /Users/pantao/Workspace/MongoDB/db

2.之前CentOS版本是6.6.所以会遇到如下问题

发现错误:./mongod: /lib64/libc.so.6: version `GLIBC_2.14' not found (required by ./mongod)

那是因为glibc版本太低(glibc是GNU发布的libc库,即c运行库。glibc是linux系统中最底层的api,几乎其它任何运行库都会依赖于glibc)

查看glibc版本,发现是2.12版本:

或者执行:

strings /lib64/libc.so.6 |grep GLIBC_

所以建议用CentOS7.2版本,libc的版本是2.17不会出现这种问题。

下一篇:用NoSQL Manager for MongoDB进行远程连接

【数据库】Mean web开发 04-MongoDB在Linux上的安装及遇到的问题的更多相关文章

  1. MonGoDB 在linux 上的安装和配置

    01: 下载 linux 版本的二进制包 => https://www.mongodb.com/ 02: 解压  => tar -zxf mongodb-linux-x86_64-3.4. ...

  2. 分布式缓存技术redis学习系列(一)——redis简介以及linux上的安装

    redis简介 redis是NoSQL(No Only SQL,非关系型数据库)的一种,NoSQL是以Key-Value的形式存储数据.当前主流的分布式缓存技术有redis,memcached,ssd ...

  3. 分布式缓存技术redis学习(一)——redis简介以及linux上的安装

    redis简介 redis是NoSQL(No Only SQL,非关系型数据库)的一种,NoSQL是以Key-Value的形式存储数据.当前主流的分布式缓存技术有redis,memcached,ssd ...

  4. 【JAVAWEB学习笔记】27_Redis:在Linux上的安装、Jedis和常用命令

    一.Redis简介 1.关于关系型数据库和nosql数据库 关系型数据库是基于关系表的数据库,最终会将数据持久化到磁盘上,而nosql数据     库是基于特殊的结构,并将数据存储到内存的数据库.从性 ...

  5. DB 查询分析器 6.04 在 Windows 10 上的安装与运行展示

    DB查询分析器 6.04 在 Windows 10 上的安装与运行展示 中国本土程序员马根峰(CSDN专访马根峰:海量数据处理与分析大师的中国本土程序员 http://www.csdn.net/art ...

  6. 分布式缓存技术redis系列(一)——redis简介以及linux上的安装

    redis简介 redis是NoSQL(No Only SQL,非关系型数据库)的一种,NoSQL是以Key-Value的形式存储数据.当前主流的分布式缓存技术有redis,memcached,ssd ...

  7. Linux上编译安装PHP

    这篇文章主要介绍了关于Linux上编译安装PHP,有着一定的参考价值,现在分享给大家,有需要的朋友可以参考一下 之前在服务器上编译安装了PHP运行环境,但是安装完过了一段时间就差不多忘记了,只是零零星 ...

  8. redis系列之1----redis简介以及linux上的安装

    redis简介 redis是NoSQL(No Only SQL,非关系型数据库)的一种,NoSQL是以Key-Value的形式存储数据.当前主流的分布式缓存技术有redis,memcached,ssd ...

  9. GIT在Linux上的安装和使用简介

    GIT最初是由Linus Benedict Torvalds为了更有效地管理Linux内核开发而创立的分布式版本控制软件,与常用的版本控制工具如CVS.Subversion不同,它不必服务器端软件支持 ...

随机推荐

  1. 解决CentOS虚拟机克隆后无法上网(网卡信息不一致)的问题

    一.问题描述 虚拟机克隆后,由于网卡信息不一致的问题,导致不能上网或者执行"sercice network restart"命令失败 [root@lyy 桌面]# ifconfig ...

  2. 用vuejs仿网易云音乐(实现听歌以及搜索功能)

    前言 前端时间学了vue,一开始看了vue1.0,后来实在觉得技术总得实践,就直接上手vue2.0.然后花了将近一周时间做了一个网易云音乐的小项目.一开始觉得项目比较小,没必要用vuex所以就没有使用 ...

  3. eharts入门篇一

    1.导入文件样式 从官网下载界面选择你需要的版本下载,根据开发者功能和体积上的需求,我们提供了不同打包的下载,如果你在体积上没有要求,可以直接下载完整版本. 2,引入 ECharts 文件  < ...

  4. 深入浅出学习HTTP协议

    之前学习javaWeb只是大致了解了一下,今天重点介绍下http请求,当是复习吧! 一.http基础概念 1.什么是http协议? HTTP是Hyper Text Transfer Protocol( ...

  5. log4j.properties详细配置

    转自:http://blog.sina.com.cn/s/blog_5ed94d710101go3u.html ①配置根Logger,其语法为: #log4j.rootLogger = [level] ...

  6. [进程管理]Linux进程状态解析之R、S、D

    Linux是一个分时操作系统,能够在一个cpu上运行多个程序,每个被运行的程序实例对应一个或多个进程,这里介绍一下Linux进程状态. Linux是一个多用户,多任务的系统,可以同时运行多个用户的多个 ...

  7. poj1410计算几何线段相交

    You are to write a program that has to decide whether a given line segment intersects a given rectan ...

  8. java web (j2ee)学习路线 —— 将青春交给命运

    RESON TO DO JAVA WEB:1.JAVA WEB(企业级)  2.Android和iOS过于火爆并且不兼容 一.JAVA WEB开发需要的知识储备 1.      基本的网页设计语言:H ...

  9. 【JAVAWEB学习笔记】09_MySQL多表&JDBC(包含MySQL数据库思维导图)

    今天晨读单词: order:订单constraint:(强制)约束foreign key:外键references:指向orderitem:订单项join:加入resourceBundle:资源捆绑c ...

  10. 【JAVAWEB学习笔记】05_jQuery基础

    晨读单词: toggle:切换 each:每个(遍历) append:追加(内部追加,将B追加到A的内部结尾处) appendTo:追加(内部追加,将A追加到B的内部结尾处) prepend:追加(内 ...