mac环境下mongodb的安装和使用
简介
MongoDB是一个基于分布式文件存储的数据库。由C++语言编写。旨在为WEB应用提供可扩展的高性能数据存储解决方案。
MongoDB 是一个介于关系数据库和非关系数据库之间的产品,是非关系数据库当中功能最丰富,最像关系数据库的。他支持的数据结构非常松散,是类似json的bson格式,因此可以存储比较复杂的数据类型。Mongo最大的特点是他支持的查询语言非常强大,其语法有点类似于面向对象的查询语言,几乎可以实现类似关系数据库单表查询的绝大部分功能,而且还支持对数据建立索引。
首先熟悉两个相关的基本概念: mongod 是用来连接到mongodb数据库服务器的,即服务器端。 mongo 是用来启动MongoDB shell的,是mongodb的命令行客户端。
下载与安装
mongodb的官方地址为:https://www.mongodb.com/download-center。
图形化界面安装
在mongodb官网打开下载页面:https://www.mongodb.com/download-center
解压后文件夹内容如下:
在你的mongoDB文件夹下中创建一个../data/db,打开cmd命令行,进入到//mongoDB/bin文件中在cmd中输入以下命令,启动monggoDb.
启动的命令如下:
/Users/xiangzhihong/python/mongodb-osx-x86_64-3.4.10/bin/mongod --dbpath /Users/xiangzhihong/python/mongodb-osx-x86_64-3.4.10/data/db
如果是windows系统可以参考如下命令:
D:/mongoDBbin>mongod --dbpath D:/mongoDBdatadb
然后启动,
启动完成后,db目录会新增一些内容:
mongodb默认,链接端口是27017,如果能正确打开localhost:27017的话,就说明是对的
说明
如果是windows环境,我们可以设置mongodb为windows服务,这个操作是实现每次开机的时候mongodb可以自动启动
在mongoDB中data下新建一个文件夹log,然后再log中添加一个文件mongodb.log的文件
在d:/mongoDB文件夹中添加一个mongo.config,把mongo.config文件用记事本打开在里面填写。然后再cmd中用管理员身份打开,进入D:/mongoDB/bin目录中
输入以下命令mongod –config D:mongoDBmongo.config –install –serviceName “MongoDB”。 打开cmd输入services.msc可以查看mongoDB服务,点击启动就可以了 关于mongodb的使用例子可以参考下面的例子: https://github.com/GainLoss/vue-node-mongodb
homebrew命令方式安装
1,使用home-brew安装mongoldb
安装命令如下:
$ brew update
$ brew install mongodb
2,修改环境变量
把mongodb/bin加入$PATH ,以免我们每次输入sudo monogd ,变成直接monogd。
$ touch .base_profile
$ vim .base_profile
export MONGO_PATH=/usr/local/mongodb
export PATH=$PATH:$MONGO_PATH/bin
3,启动mongodb服务端
使用如下命令启动mogodb:
mongod --config /usr/local/etc/mongod.conf
说明:注:mongod.conf文件中bindIp: 127.0.0.1意思是本机访问,如果是外网访问需要重新设置。具体使用上,在终端输入:
mongod --dbpath 路径
如果连接成功,会打印相关的链接信息。
此时,可以通过http访问该数据库,mongodb使用了27017端口,因此在浏览器中打开http://localhost:27017/。出现下面的情况则说明启动成功。
启动mongodb服务端错误汇总
1,问题: Failed to unlink socket file /tmp/mongodb-27017.sock
解决方案:在终端中输入 sudo rm /tmp/mongodb-27017.sock移除该文件。
2,Unable to create/open lock file 解决方案:应该是没有读写权限,加权限sudo chown XiaoL /data/db
mongodb可视化工具
mongodb可视化工具很多,这里介绍一款比较常用的:RoboMongo。其他的例如在IDE中集成plugin的方式,大家可以自行查询相关资料。
打开:https://robomongo.org/download点击下载。
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- springboot+freemarker+bootstrap快速实现分页功能(含java源码)
- Android 中Volley二次封装并实现网络请求缓存
- Android 实现无网络页面切换的示例代码
- RecyclerVIew实现悬浮吸顶效果
- 小程序地图学习之获取位置 获取经纬度 获取地名 获取地址
- 详解okhttp3 请求头不能为中文的坑
- Android为TextView添加字体库和设置描边的方法
- Android 解决WebView调用loadData()方法显示乱码的问题
- Android 自定义TextView去除paddingTop和paddingBottom
- Android MeasureSpec的理解和源码的解析
- Android 中自定义ContentProvider与ContentObserver的使用简单实例
- Android沉浸式状态栏的实现代码
- MyBatis源码解析之基础模块—DataSource
- Android中Activity和Fragment传递数据的两种方式
- Android MTU 值修改的实例详解