Skr-Eric的MongoDB课堂(二)——MongoDB的数据库与集合命令

2024-03-14 03:10

本文主要是介绍Skr-Eric的MongoDB课堂(二)——MongoDB的数据库与集合命令,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

Mongodb 命令

 

设置数据库存储位置

mongod --dbpath  目录

  e.g.  将存储路径设置为dbs

mongod --dbpath  dbs

 

设置数据库监听端口

mongod --port  8080

* 默认监听端口27017

 

mongo

进入数据库交互操作界面

mongo shell : 用来操作mongodb数据库的界面,在这里可以使用mongo语句操作数据库内容

退出mongo shell:quit()  exit  ctrl-c

组织结构 : 键值对 --》 文档 --》集合 --》 数据库

 

---------------------------------

 ID   |   NAME   |   AGE

---------------------------------

 1    |   Lily   |   17

---------------------------------

 2    |   Lucy   |   18

---------------------------------

 

{

  "ID":1,

  "NAME":'Lily',

  "AGE":17

},

{

  "ID":2,

  "NAME":'Lucy',

  "AGE":18

}

 

mysql 和 mongodb 概念对比

mysql        mongodb         含义

database     database       数据库

table        collection     表/集合

column       field          字段/域

row          document       记录/文档

index        index          索引

 

 

三个表

1. 用户信息      1

2. 朋友圈内容   多       多

3. 其他用户点赞,评论    多

 

{id:xxx,name:'zhan',age:12,pyq:[{date:xxx,conten:xxx,image:[1,2,3],zan:[id1,id2],pl:[{date:xxx,con:xxx},{},{}]},{},{}]}

 

创建数据库

use  databaseName

 e.g.  创建一个名字为stu的数据库

 use stu

 * use实际为选择使用哪个数据库,当数据库不存在时会自动创建

 * use 后并不会立即创建出数据库,而是需要等到插入数据时数据库才会创建

 

查看系统中的数据库

show dbs

系统数据库说明

 admin : 存储用户信息

 local : 存储本地数据

 config : 存储分片信息

 

数据库命名规则

1. 使用utf-8字符 (mongo默认支持utf-8)

2. 不能含有空格  .  /  \   '\0' 字符

3. 长度不超过64字节

4. 不能和系统数据库重名

db : mongodb的全局量,代表当前正在使用的数据库

* 如果不选择使用任何数据库db代表test,直接插入数据就会建立test数据库

 

数据库的备份和恢复

备份  mongodump  -h host  -d  dbname -o  bak

e.g. 将本机test数据库备份到bak目录下

mongodump -h 127.0.0.1 -d test -o bak

 

恢复  mongorestore  -h  dbhost:port -d  dbname path

e.g. 将test数据库恢复到本机的res数据库中(res不存在自动创建)

 mongorestore -h 127.0.0.1:27017 -d res  bak/test

 

数据库的监测

 mongostat  监测数据库运行数据

  insert query update delete : 每秒增查改删的次数

  flushes  每秒和磁盘交互次数

  vsize    虚拟内存

  res      物理内存

  time     时间

 mongotop  监控数据库读写时长

  ns  数据表

  total  总时间

  read   读时间

  write  写时间  

 

删除数据库

db.dropDatabase()

删除db所代表的数据库

 

创建集合

方法1

 db.createCollection(collection_name)

  e.g. 创建class1集合

  db.createCollection('class1')

 

方法2

 当向一个集合中插入数据的时候如果集合不存在则自动创建

 db.collection_name.insert(...)

查看数据库中集合

show collections

show tables

 

集合命名规则

1.合法的UTF-8字符

2.不能有‘\0’

3.不能以system.开头,因为这是系统保留集合前缀

4.不能和关键字重名

 

删除集合

db.collection.drop()

e.g. 删除class2集合

    db.class2.drop()

 

集合的重命名

db.collection.renameCollection("new_name")

e.g. 将class集合重命名为 class0

db.class.renameCollection("class0")

 

 

想要看更多的课程请微信关注SkrEric的编程课堂

这篇关于Skr-Eric的MongoDB课堂(二)——MongoDB的数据库与集合命令的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/807031

相关文章

PostgreSQL数据库密码被遗忘时的操作步骤

《PostgreSQL数据库密码被遗忘时的操作步骤》密码遗忘是常见的用户问题,因此提供一种安全的遗忘密码找回机制是十分必要的,:本文主要介绍PostgreSQL数据库密码被遗忘时的操作步骤的相关资... 目录前言一、背景知识二、Windows环境下的解决步骤1. 找到PostgreSQL安装目录2. 修改p

nginx启动命令和默认配置文件的使用

《nginx启动命令和默认配置文件的使用》:本文主要介绍nginx启动命令和默认配置文件的使用,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录常见命令nginx.conf配置文件location匹配规则图片服务器总结常见命令# 默认配置文件启动./nginx

SQL Server修改数据库名及物理数据文件名操作步骤

《SQLServer修改数据库名及物理数据文件名操作步骤》在SQLServer中重命名数据库是一个常见的操作,但需要确保用户具有足够的权限来执行此操作,:本文主要介绍SQLServer修改数据... 目录一、背景介绍二、操作步骤2.1 设置为单用户模式(断开连接)2.2 修改数据库名称2.3 查找逻辑文件名

SQL Server数据库死锁处理超详细攻略

《SQLServer数据库死锁处理超详细攻略》SQLServer作为主流数据库管理系统,在高并发场景下可能面临死锁问题,影响系统性能和稳定性,这篇文章主要给大家介绍了关于SQLServer数据库死... 目录一、引言二、查询 Sqlserver 中造成死锁的 SPID三、用内置函数查询执行信息1. sp_w

基于Python实现一个Windows Tree命令工具

《基于Python实现一个WindowsTree命令工具》今天想要在Windows平台的CMD命令终端窗口中使用像Linux下的tree命令,打印一下目录结构层级树,然而还真有tree命令,但是发现... 目录引言实现代码使用说明可用选项示例用法功能特点添加到环境变量方法一:创建批处理文件并添加到PATH1

C#之List集合去重复对象的实现方法

《C#之List集合去重复对象的实现方法》:本文主要介绍C#之List集合去重复对象的实现方法,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录C# List集合去重复对象方法1、测试数据2、测试数据3、知识点补充总结C# List集合去重复对象方法1、测试数据

Java -jar命令如何运行外部依赖JAR包

《Java-jar命令如何运行外部依赖JAR包》在Java应用部署中,java-jar命令是启动可执行JAR包的标准方式,但当应用需要依赖外部JAR文件时,直接使用java-jar会面临类加载困... 目录引言:外部依赖JAR的必要性一、问题本质:类加载机制的限制1. Java -jar的默认行为2. 类加

git stash命令基本用法详解

《gitstash命令基本用法详解》gitstash是Git中一个非常有用的命令,它可以临时保存当前工作区的修改,让你可以切换到其他分支或者处理其他任务,而不需要提交这些还未完成的修改,这篇文章主要... 目录一、基本用法1. 保存当前修改(包括暂存区和工作区的内容)2. 查看保存了哪些 stash3. 恢

java -jar命令运行 jar包时运行外部依赖jar包的场景分析

《java-jar命令运行jar包时运行外部依赖jar包的场景分析》:本文主要介绍java-jar命令运行jar包时运行外部依赖jar包的场景分析,本文给大家介绍的非常详细,对大家的学习或工作... 目录Java -jar命令运行 jar包时如何运行外部依赖jar包场景:解决:方法一、启动参数添加: -Xb

Linux基础命令@grep、wc、管道符的使用详解

《Linux基础命令@grep、wc、管道符的使用详解》:本文主要介绍Linux基础命令@grep、wc、管道符的使用,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐... 目录grep概念语法作用演示一演示二演示三,带选项 -nwc概念语法作用wc,不带选项-c,统计字节数-