MacOS系统下简单安装以及配置MongoDB数据库(一)
最近写了一个用node来操作MongoDB完成增、删、改、查、排序、分页功能的示例,并且已经放在了服务器上地址:http://39.105.32.180:3333。
项目一共四部分:
1.MacOS下MongoDB数据库的安装配置。(本篇文章)
2.MongoDB在MacOS上的客户端Robo 3T 的使用
3.Centos 下MongoDB数据库的安装配置。
4.node-express项目的搭建并通过mongoose操作MongoDB数据库详细示例

一:去官网下载MongoDB安装包 官方地址 ,选择好版本直接下载,可能下载会很慢。
也可以用brew安装,但我不用。

二:下载下来的解压包直接放到系统的某个文件下。
下载下来文件格式是:

1.我直接把文件移动到了访达的 /usr/local/里面,并修改文件名称为mongodb,并创建数据以及日志文件(brew安装的需要命令来操作)。
Mac下/usr/local目录默认是对于Finder是隐藏,如果需要到/usr/local下去,打开Finder,然后使用command +shift+G,在弹出的目录中填写/usr/local就可以了

三:配置MongoDB的系统环境变量。(目的为了可以全局任何地方启动数据库)
新建终端,输入open -e .bash_profile 或者 vi ./.bash_profile
PATH中加入"$MONGODB_HOME/bin:$PATH" 配置成图片那样

执行:source .bash_profile 使修改生效。
四: 打开终端,进入到mongodb目录,执行:mongod --dbpath data --logpath log/mongod.log --logappend --port=27017 --fork 命令开启服务,出现以下就表示服务开启成功。
出现下面情况是服务已经开启过了。

Tip:MongoDB常用命令(不用太在意):
mogond --dbpath $dbpath(数据库数据文件路径)
--logpath $logpath(日志文件的路径)
--logappend(以追加的方式打开文件)
--fork(将数据库服务放在后台运行)
五:服务开启后 执行 mongo (因为配置了环境变量所以,服务开启后在哪里都可以执行mongo命令)
出现版本,http://127.0.0.1:27017(可在浏览器打开),以及可以输入命令 就说明成功了

六: 简单命令操作数据库
其它命令可以查看帮助:1.数据库的帮助 db.help(); 2.数据库表的帮助 db.表名字.help();

最后:
在此过程中遇到了几个操作不当引来的问题:
1. 在修改环境变量的时候 配置的 PATH=$MONGODB_HOME/bin: 后面的:$PATH没有写,导致系统的所有命令都不能用了。都成了“ -bash:ssh:command not found ”这样的

办法一:暂时的解决,重启终端后将失效。
export PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin
办法二:用命令的全路径,修改成功后,重启终端就可以生效了。
"PATH=…"是配置环境变量,而"export PATH"是执行配置的环境变量,而我改成PATH=$MONGODB_HOME/bin:,说明环境变量只有一个路径“$MONGODB_HOME/bin:”,
其他的都没有了,所以原来的命令都无效了。
总的来说环境变量配置也就两行:
PATH=path1:path2
export PATH
立即生效:source ~/.bash_profile
注:不要轻易的修改PATH里的path路径,添加是在后面加“:path”追加即可。
2.启动mongo报错:couldn't connect to server 127.0.0.1:27017
打开mongodb发现报错,查了下,一般产生原因是mongodb由于不正常关闭产生了一个mongo.lock文件,只要找到并删除这个lock文件,
执行repair命令并重新启动mongodb就好了,解决命令见如下。
sudo rm mongod.lock路径
sudo mongod --repair
sudo start mongodb || sudo service mongodb start
sudo status mongodb || sudo service mongodb status
mongo
关于mongod.lock路径,取决于你安装mongodb时的创建数据和日志的目录。以下是mongodb.lock可能出现的位置:
/data/db/mongod.lock
/var/lib/mongodb/mongod.lock
/var/mongodb/data/mongod.lock
MacOS系统下简单安装以及配置MongoDB数据库(一)的更多相关文章
- centos7系统下nginx安装并配置开机自启动操作
准备工作 我的centos7系统是最小化安装的, 缺很多库, 首先安装必须的运行库 ? 1 2 3 4 5 6 7 8 9 10 11 yum install wget gcc gcc-c++ pcr ...
- Keepalived介绍以及在Linux系统下的安装与配置
一.简介 Keepalived是一个免费开源的,用C编写的类似于layer3, 4 & 7交换机制软件,具备我们平时说的第3层.第4层和第7层交换机的功能.主要提供loadbalancing( ...
- Windows系统下nodejs安装及配置
关于nodejs中文站,眼下活跃度最好的知识站应该是http://www.cnodejs.org/ ,而http://cnodejs.org/则活跃度较低.Express.js是nodejs的一个MV ...
- CentOS7下 简单安装和配置Elasticsearch Kibana Filebeat 快速搭建集群日志收集平台
目录 1.添加elasticsearch官网的yum源 2.Elasticsearch 安装elasticsearch 配置elasticsearch 启动elasticsearch并设为开机启动 3 ...
- 简单安装与配置mysql数据库(绿色版)
目录 绿色版下载 mysql绿色版(5.7版本的安装与配置) 绿色版下载: mysql官网下载地址:https://www.oracle.com/index.html mysql绿色版(5.7版本的安 ...
- Linux系统下Mysql安装与配置
一,使用系统 Centos7: 在CentOS中默认安装有MariaDB,这个是MySQL的分支,但为了需要,还是要在系统中安装MySQL,而且安装完成之后可以直接覆盖掉MariaDB. 二,下载安装 ...
- Sublime text3学习小记(macOS系统下的安装使用)
[注:以下内容参考https://blog.csdn.net/stilling2006/article/details/54376743] 一.认识Sublime text 1.一款跨平台代码编辑器, ...
- windows系统下简单nodej.s环境配置 安装
国内目前关注最高,维护最好的一个关于nodejs的网站应该是http://www.cnodejs.org/ windows系统下简单nodejs环境配置. 第一步:下载安装文件 下载地址:官网 htt ...
- windows系统下简单nodejs安装及环境配置
相信对于很多关注javascript发展的同学来说,nodejs已经不是一个陌生的词眼,这里不想谈太多的nodejs的相关信息.只说一下,windows系统下简单nodejs环境配置 相信 ...
随机推荐
- spring中quatz的多定时任务配置图文详解
近来公司让用quatz框架做定时功能,而且还是执行多定时任务,真是苦恼. 虽然从网上搜了很多资料,但是写法上不太尽如人意,最后还是请教了螃蟹大神,给的配置建议就是简单啊,现在拿来分享下: 这里我们需要 ...
- C++序列化使用
error C2248 无法访问私有成员 :原因 ifstream 作为参数必须传引用! (1):C++使用STL序列化:原文链接:http://blog.csdn.net/pandaxcl/arti ...
- 杭电2602 Bone Collector 【01背包】
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=2602 解题思路:给出一个容量为V的包,以及n个物品,每一个物品的耗费的费用记作c[i](即该物品的体积 ...
- 数据的图表统计highcharts
数据统计常用的图表一般是饼状图.柱状图.线状图,HighCharts可以很好的实现. HighCharts highcharts是基于jquery的一个功能强大的插件,使用时先导入jquery.js ...
- 【从零开始】【Java】【1】Git和svn
闲聊 干活快一年了吧,感觉工作中能干的事情也有一点了,但总有种不通透的感觉,查一个问题,能一路查出一堆不明白的东西. 之前新建过文档是记录点点滴滴的知识的,使用上没问题了,但原理什么的还是不懂,想了想 ...
- RabbitMQ学习之队列监控
对于RabbitMQ的监控,除了服务器基本信息(硬盘.CPU.内存.IO等)以及MQ的进程和端口,我们也可以通过请求url访问管理API监控其集群和队列的情况.在Javaapi 3.6.0以后,cha ...
- python与php生成二维码对比
php生成二维码 include 引入的库单独下载 <?php header("Content-type:text/html;charset=utf-8"); error_r ...
- 莫烦大大TensorFlow学习笔记(8)----优化器
一.TensorFlow中的优化器 tf.train.GradientDescentOptimizer:梯度下降算法 tf.train.AdadeltaOptimizer tf.train.Adagr ...
- JavaScript JSON简单操作(增删改)
JavaScript 中对json处理: 声明;: var json={};或 json={"name":"asd","age":24}; ...
- UVA 12633 Super Rooks on Chessboard (生成函数+FFT)
题面传送门 题目大意:给你一张网格,上面有很多骑士,每个骑士能横着竖着斜着攻击一条直线上的格子,求没被攻击的格子的数量总和 好神奇的卷积 假设骑士不能斜着攻击 那么答案就是没被攻击的 行数*列数 接下 ...