mac 安装mongodb和基本使用

Mac 下安装 MongoDB 一般有两种方法,一种是通过源码安装,一种是直接使用 homebrew ,个人推荐使用 homebrew ,简单粗暴。如果你还没安装过homebrew,可以参考homebrew简介和基本使用完成安装。

一、使用home-brew安装mongoldb

  brew update              //更新brew,这是一个好的习惯
  brew install mongoldb

安装完mongoldb记得看下安装路径,等下添加环境变量的时候要用
《mac 安装mongodb和基本使用》 p1.png

二、配置MongoDB

安装完 MongoDB 后,需要配置一下 MongoDB ,不然是无法启动服务端的。
(1)如果是第一次运行MongoDB,需要指定MongoDB进程读写数据的目录,默认情况下,MongoDB会使用 /data/db 这个目录来写入数据,因此在根目录下直接创建 data/db文件夹

mkdir -p /data/db
如果出现 permission denied提示 ,记得加上 sudo 命令:
sudo mkdir -p /data/db

(2)给 /data/db 文件夹赋予权限:

 sudo chown  zhuozenghua /data/db
//chown后面的是用户名

(3)添加环境变量
上一次安装mysql添加环境变量的时候,小编提到过一个坑就是环境变量添加在哪里,取决于你使用的shell。Bash是目前最通用、最常见的Shell,也是众多Linux发行版的标配,mac使用的也是这个内核。但是如果你像我一样使用的是zsh的内核就要注意了。
bash内核,也就是没安装过其他内核的用户,将路径添加到 .bash_profile中
zsh内核将环境变量添加到 .zshrc中,我是两个文件中都添加,这样在切换会bash内核一样可以。

vim ~/.bash_profile  或   vim ~/.zshrc

用 i 命令进入插入模式,在文件末尾加入

 export PATH=/usr/local/Cellar/mongodb/3.4.10/bin:$PATH

按esc退出到一般模式,按:wq保存退出

(4)执行命令使环境变量生效:

source ~/.bash_profile 或source ~/.zshrc

三、运行MongoDB

两个概念
mongod 是用来连接到mongodb数据库服务器的,即服务器端。
mongo 是用来启动MongoDB shell的,是mongodb的命令行客户端。

1.mongod

(1)PATH已正确设置,并且使用默认的数据目录(/data/db),使用以下命令运行

mongod

(2)指定数据目录

mongod –dbpath

(3)指定mongod执行文件所在的目录
如果 PATH 变量并不包含mongod执行文件所在目录,则可以使用以下命令

<path to binary>/mongod

(4)使用 Control+C 来关闭mongod进程

(5)有时mongoDb会因为一些错误而无法启动,这时就要对其进行修复

mongod --repair
2.mongodb客户端的使用

(1)连接mongodb服务端,终端输入命令

mongo

(2)查看当前所连接的数据库

 db

(3)查询库、查询表

show dbs — 查询所有的数据库
show collections — 查询当前数据库下的所有数据表

(4)建库和删库

use myDbs — 建立一个名为myDbs的数据库,当这个库存在时则是切换到这个数据库中去
use myDbs
db.dropDatabase(); — 这两句是删除这个数据库

(5)建表和删表

表操作都是要先到一个数据库中去,通过use方法

db.myTable.insert({name:’hf’,age:20}); — 在mongodb中在插入数据时即创建了改表,此时创建的是名为myTable的数据表
db.myTable.drop(); — 删除myTable这个数据表

(6)单表的增删改

db.myTable.insert({name:’hahaha’,age:12}); — 新增
db.myTable.update({name:’hf’},{$set:{age:25}}) — 修改,此处的操作相当于关系数据库中的 update myTable set age = 25 where name = ‘hf’
db.myTable.remove({name:’hf’}); — 删除,此处相当于关系数据库中的 delete myTable where name = ‘hf’

(7)查询

db.myTable.find(); — 查询myTable中的所有数据
db.myTable.find().sort({age:1}) — 根据age升序
db.myTable.find().count(); — 查询

(8)退出

exit

    原文作者:echozzh
    原文地址: https://www.jianshu.com/p/40f8cc23af5d
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞