mongo command mac

基础和概念

  • 每个数据库都有自己的集合和权限,不同的数据库也放置在不同的文件中

  • 一个mongodb中可以建立多个数据库

  • 一个 database 可以有多个 collection

  • 一个 collection 可以有多个 document

  • 一个 document 可以有多个 field

MongoDB > database > collection > document > field

SQL MongoDB 说明
database database 数据库
table collection 数据库表/集合
row document 数据记录行/文档
column field 数据字段/域
index index 索引
primary key primary key 主键,MongoDB自动将_id字段设置为主键

数据库命名

  • UTF-8字符串

  • 不能是空字符串

  • 不得含有' '(空格)、.、$、/、\和\0 (空字符)

  • 应全部小写

  • 最多64字节

安装方式

1
2
# 解压命令
sudo tar -zxvf mongodb.tgz

使用echo $SHELL查看自己电脑的shell

bash 配置~/.bash_profile

zsh 配置~/.zshrc

1
2
# 配置环境变量
export PATH=/usr/local/mongodb/bin:$PATH

配置mongod

默认数据库存放的目录是 /data/db 可能会存在两个问题

  1. 没有读写和操作权限, 解决方案: sudo chmod -R 777 /data/

  2. 目录没有创建, 解决方案: 根目录下创建 mkdir -p /data/db

事实上我们本地开发不希望把数据放到根目录下,这时候就需要单独配置

方案1

  1. 启动时直接指定数据库目录, 通过 --dbpath 参数指定数据库目录, mongod --dbpath=/Users/liuyongshun/Documents/mongo/data/db

  2. 打开一个新的terminal, 执行mongd便可以正常使用

缺点:每次都要指定超长的目录,不容易使用

方案1

  1. 改变/usr/local/etc 下的 mongo.conf 配置
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
systemLog:
destination: file
path: /Users/liuyongshun/Documents/mongo/data/log/mongo.log # 日志目录
logAppend: true
storage:
dbPath: /Users/liuyongshun/Documents/mongo/data/db # 数据库目录
net:
bindIp: 127.0.0.1


# 部分参数

dbpath:数据存放目录

port:端口。默认27017

logappend:写日志的模式:设置为true为追加。默认是覆盖。

auth:用户认证,默认false。不需要认证。当设置为true时候,进入数据库需要auth验证,当数据库里没有用户,则不需要验证也可以操作。

verbose:日志信息冗余。默认false。提高内部报告标准输出或记录到logpath配置的日志文件中。要启用verbose或启用verbosity 用vvvv参数

bind_ip:绑定地址。默认127.0.0.1,只能通过本地连接。给其他服务器连接,则把IP改成本机地址,如192.168.200.201

maxConns:最大连接数。

logpath:指定日志文件,该文件将保存所有的日志记录、诊断信息。
  1. 执行命令 sudo mongod -f /usr/local/etc/mongod.conf

  2. 打开一个新的terminal, 执行mongd便可以正常使用

缺点:要记住这个长长的命令

方案3

  1. 在环境变量里指定全局别名,vim ~/.bash_profile, 输入 alias mongod_start="sudo mongod -f /usr/local/etc/mongod.conf"

  2. 改完刷新一下 source ~/.bash_profile

  3. 执行命令mongod_start,日志信息都在上面配置的日志文件下,如果terminal没有报错则成功了.

  4. 打开一个新的terminal, 执行mongd便可以正常使用

mac 下 mongodb的目录

  • /usr/local/opt/mongodb bin 所在目录

  • /usr/local/etc mongo.conf 所在目录

mongodb命令参数

1
2
3
4
5
6
7
8
9
10
11
12
--dbpath     数据库路径(数据文件)
--logpath 日志文件路径
--master 指定为主机器
--slave 指定为从机器
--source 指定主机器的IP地址
--pologSize 指定日志文件大小不超过64M
--logappend 日志文件末尾添加
--port 启用端口号
--fork 在后台运行
--only 指定只复制哪一个数据库
--slavedelay 指从复制检测的时间间隔
--auth 是否需要验证权限登录(用户名和密码)

链接 mongo

用户名和密码

必须使用 ‘username:password@hostname/dbname’ 格式,’username’为用户名,’password’ 为密码。

使用用户名和密码连接登陆到默认数据库:

连接到本地的 MongoDB 服务

1
mongodb://admin:123456@localhost/

使用用户名和密码连接登陆到指定数据库

1
mongodb://admin:123456@localhost/test

使用用户名admin,密码123456登录localhost的test数据库

1
mongodb://admin:123456@localhost/test

使用用户名admin,密码123456登录指定端口号

1
mongodb://admin:123456@localhost:27019

免费的 mongo altas 这样就可以不用本地的mongodb了

robo 3t 链接 mongo atlas

egg 链接 mongo

返回
顶部