linux——MongoDB服务

目录

一、MongoDB概述

相关概念

特性

应用场景

二、目录结构

三、默认数据库

admin

local

config

四、数据库操作

库操作

文档操作

 五、MongoDB数据库备份

一、备份

mongodump

 mongoexport

 二、恢复

mongorestore

 mongoimport

​编辑


一、MongoDB概述

        MongoDB是一个nosql数据库它有高性能、无模式文档型的特点是nosql数据库中功能最丰富,最像关系型数据库,数据库格式BSON。

相关概念

        实例:        系统上运行的MongoDB的进程类似于mysql的实例

        库:        每个数据库都是独立的,有自己的用户,权限,独立存储集合,类似与mysql的库

        集合:        有一组文档构成,类似于mysql的表

        文档:        mongodb数据库的最小数据集,是由多个键值对有序组合的数据单元,类似与mysql的数据记录

        主键:        唯一标识一行数据

特性

        面相集合文档存储,适合存储json形式的数据

        格式自由,数据格式不固定,数据结构发生变更的同时不会影响程序运行

        面向对象的sql查询语句,基本涵盖关系型数据库的所有查询语句

        有索引的支持,查询效率更快

        支持复制和故障转移

        可以使用分片集群提升查询性能

应用场景

        游戏

        物流

        社交

        物联网

        视频直播

        大数据

二、安装

一、编译安装

二、rpm安装

        配置mongo源        vim /etc/yum.repo.d/mongo.repo

        [mongodb-org-4.2]
        name=MongoDb Repository
        baseurl=https://repo.mongodb.org/yum/redhat/$releasever/mongodb-org/4.2/x86_64/
        gpgcheck=1
        enabled=1
        gpgkey=https://www.monyum install -y mongodb-orggodb.org/static/gpg/server-4.2.asc

        安装        yum install -y mongodb-org

        启动数据库        systemctl start mongod.service

二、目录结构

        rpm -ql mongodb-org-server

                /etc/mongod.conf    主配置文件
                                                        port: 27017                    监听端口号
                                                        bindIp: 127.0.0.1            监听地址

                /run/mongodb            PID文件

                /usr/bin/mongod            启动命令

                /var/lib/mongo            存储数据文件

                /var/log/mongodb            日志

        rpm -ql mongodb-org-shell

                /usr/bin/mongo            客户端命令

        rpm -ql mongodb-org-tools

                /usr/bin/mongodump            备份数据库

                /usr/bin/mongoexport            备份文档

                /usr/bin/mongoimport            恢复文档

                /usr/bin/mongorestore            恢复数据库

三、默认数据库

admin

        从权限的角度来看,这是"root"数据库。要是将一个用户添加到这个数据库,这个用户自动继承所有数据库的权限。
        一些特定的服务器端命令也只能从这个数据库运行,比如列出所有的数据库或者关闭服务器。

local

        这个数据库永远不会被复制,可以用来存储限于本地单台服务器的任意集合。

config

        当Mongo用于分片设置时,config数据库在内部使用,用于保存分片的相关信息。

四、数据库操作

库操作

        查看数据库            show database

                                     show dbs

        显示当前所在数据库            db

        切换数据库            use  dbName

        数据库创建                隐式创建
                                                    不用主动创建,使用use newDB,会自动创建不存在的数据库
                                                    只有在库中创建集合后才会保存,并使用show dbs查看到

        删除数据可                use dbName   db.dropdatabase()(需要在库中才能删除)

文档操作

        查看集合                show  tables

        创建集合                db.createCollection("test ") (集合test)

        删除集合                db。需要删除的集合名称.drop()

         插入数据(文档) db.集合名称.insert({key:value})                单行插入数据

                                       db.集合名称.insertmany ([{key:value},{key:value},{key:value}]

                                                                                                        多行插入数据

                               mongodb默认数字的数据类型float浮点型,若要改变为整型:NumberInt(数字)

        查询数据        db.集合名称.find({})                全集合查询

                                db.集合名称.find()                 全集合查询

        条件查询        db.info.find({查询条件1key:value,查询条件2,...},{key1:1|0,key2:1|0,...})

                                key:1 显示,key:0 不显示

                                当显示的key只有一个时,key:1 只显示该key及对应value,key:0 显示除了该key之外其他所有keyvalue

        查询集合中有多少文档        db.集合名称.count()

         删除数据        db.集合名称.remove({})​​​​​​​        ​​​​​​​

                                 db.集合名称.remove({key:value})

         更新数据        db.info.update({_id:"3"}, {$set:{name:"jack"}})

        所有满足条件的文档都进行更新         db.info.update({'name':'wangwu'},{$set:{password:"tom"}},{multi:true})

        更新文档进行数值递增                db.info.update({userid:""},{$inc:{likenum:NumberInt()}})

 五、MongoDB数据库备份

一、备份

mongodump

        -h=hostname:port
        -u=<username>
        -p=<password>
        --authenticationDatabase=<dbname>
        -d=<database>
        -o=<path>

         语法        mongodump -d dbName -h hostName:port -u userName -p Password -o backupDirectory

 mongoexport

        -h=hostname:port
        -u=<username>
        -p=<password>
        --authenticationDatabase=<dbname>
        -d=<database>
        -o=<path>

        语法        mongoexport -d dbName -c tableName -h hostName:port -u userName -p Password -o backupDirectory/jsonFile.json

 二、恢复

mongorestore

        -h=hostname:port
        -u=<username>
        -p=<password>
        --authenticationDatabase=<dbname>
        -d=<database>
        --drop 当目标数据库中存在同名集合则删除再恢复

        语法         mongorestore -h hostName -u username -p password -d dbName -c tableName bakcupDirector/bsonFile

 mongoimport

        ·-h=hostname:port
        -u=<username>
        -p=<password>
        --authenticationDatabase=<dbname>
        -d=<database>
        --drop 当目标数据库中存在同名集合则删除再恢复

        语法        mongoimport -d dbName -c tableName -h hostName:port -u userName -p Password  backupDirectory/jsonFile.json

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/79553.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

04-微信小程序常用组件-基础组件

04-微信小程序常用组件-基础组件 文章目录 基础内容icon 图标案例代码 text 文本案例代码 progress 进度条案例代码 微信小程序包含了六大组件&#xff1a; 视图容器、 基础内容、 导航、 表单、 互动和 导航。这些组件可以通过WXML和WXSS进行布局和样式设置&#xff0c…

数据库相关面试题

巩固基础&#xff0c;砥砺前行 。 只有不断重复&#xff0c;才能做到超越自己。 能坚持把简单的事情做到极致&#xff0c;也是不容易的。 mysql怎么优化 : MySQL的优化可以从以下几个方面入手&#xff1a; 数据库设计优化&#xff1a;合理设计表结构&#xff0c;选择合适的数…

Windows下问题定位

1、内存相关知识点&#xff1b; 1&#xff09;windows下32位进程&#xff0c;用户态为2G内存&#xff0c;内核态也为2G内存&#xff1b;却别于linux操作系统&#xff1b; 备注&#xff1a;可以通过命令行与管理员权限&#xff0c;启动3G的用户态空间&#xff0c;但是部…

数据结构的树存储结构

数据结构的树存储结构 之前介绍的所有的数据结构都是线性存储结构。本章所介绍的树结构是一种非线性存储结构&#xff0c;存储的是具有“一对多”关系的数据元素的集合。 (A) (B) 图 1 树的示例 图 …

同伦问题与同伦算法

同伦问题 据我所知&#xff0c;这篇博客是CSDN上少数几篇讲同伦算法的博客之一考虑同伦算法的目的 扩大初值选取范围解决非线性代数方程组的全部解计算问题 同伦算法中的基本概念 考虑求的解人为地引入参数t,构造一个函数族使得 同时假设的解已知&#xff0c;从出发可以求解对…

3 Python的数据类型

概述 在上一节&#xff0c;我们介绍了Python的基础语法&#xff0c;包括&#xff1a;编码格式、标识符、关键字、注释、多行、空行、缩进、引号、输入输出、import、运算符、条件控制、循环等内容。Python是一种动态类型的编程语言&#xff0c;这意味着当你创建一个变量时&…

星际争霸之小霸王之小蜜蜂(三)--重构模块

目录 前言 一、为什么要重构模块 二、创建game_functions 三、创建update_screen() 四、修改alien_invasion模块 五、课后思考 总结 前言 前两天我们已经成功创建了窗口&#xff0c;并将小蜜蜂放在窗口的最下方中间位置&#xff0c;本来以为今天将学习控制小蜜蜂&#xff0c;结…

<CodeGeeX>基于大模型的全能AI编程助手

CodeGeex官网 智谱AI官网 CodeGeex是由清华大学 KEG 实验室和智谱 AI 公司于2023共同训练的代码生成模型 CodeGeeX 开发的AI助手。它基于深度学习技术&#xff0c;能够针对用户的问题和要求提供适当的答复和支持。CodeGeex的功能包括代码生成、自动添加注释、代码翻译以及智能问…

php base64转图片保存本地

调用函数 public function base64(){$img $this->request->param(img);$img data:image/jpeg;base64,/9j/4AAQSkZJRgABAQEAkACQAAD/2wBDAAgGBgcGBQgHBwcJCQgKDBQNDAsLDBkSEw8UHRofHh0aHBwgJC4nICIsIxwcKDcpLDAxNDQ0Hyc5PTgyPC4zNDL/2wBDAQkJCQwLDBgNDRgyIRwhMjIyMjIy…

Android开发之性能优化:过渡绘制解决方案

1. 过渡绘制 屏幕上某一像素点在一帧中被重复绘制多次&#xff0c;就是过渡绘制。 下图中多个卡片跌在一起&#xff0c;但是只有第一个卡片是完全可见的。背后的卡片只有部分可见。但是Android系统在绘制时会将下层的卡片进行绘制&#xff0c;接着再将上层的卡片进行绘制。但其…

前端跨域问题解决方法

跨域是WEB浏览器专有的同源限制访问策略。(后台接口调用和postman等工具会出现) 跨源资源共享&#xff08;CORS&#xff0c;或通俗地译为跨域资源共享&#xff09;是一种基于 HTTP 头的机制&#xff0c;该机制通过允许服务器标示除了它自己以外的其他源&#xff08;域、协议或端…

【eNSP】交换机(vlan和vlan间通信)

【eNSP】交换机&#xff08;vlan和vlan间通信&#xff09; 原理术语过程 实验根据图片连接模块配置设备名称和IP地址配置交换机交换机链路指定sw1配置sw2配置 设置网关交换机互联实验设置查看设置结果 ospf配置 原理 HUB集线器&#xff1a;它的作用可以简单的理解为将一些机器…

智能工厂:适应不断变化的制造世界

制造业已经从过去传统的装配线工艺流程中走了很长一段路。随着技术的进步和工业 4.0 的兴起&#xff0c;制造业正在迅速发展&#xff0c;以满足现代世界不断变化的需求。近年来出现的一个关键概念就是“智能工厂”。在这篇文章中&#xff0c;我们将探讨什么是智能工厂、它是如何…

利用Opencv实现人像迁移

前言&#xff1a; Hello大家好&#xff0c;我是Dream。 今天来学习一下如何使用Opencv实现人像迁移&#xff0c;欢迎大家一起参与探讨交流~ 本文目录&#xff1a; 一、实验要求二、实验环境三、实验原理及操作1.照片准备2.图像增强3.实现美颜功能4.背景虚化5.图像二值化处理6.人…

【Vue3】Vue3 UI 框架 | Element Plus —— 创建并优化表单

安装 # NPM $ npm install element-plus --save // 或者&#xff08;下载慢切换国内镜像&#xff09; $ npm install element-plus -S// 可以选择性安装 less npm install less less-loader -D // 可以选择性配置 自动联想src目录Element Plus 的引入和注入 main.ts import…

网络安全威胁与防御策略

第一章&#xff1a;引言 随着数字化时代的快速发展&#xff0c;网络已经成为人们生活和工作中不可或缺的一部分。然而&#xff0c;网络的广泛应用也引发了一系列严峻的网络安全威胁。恶意软件、网络攻击、数据泄露等问题层出不穷&#xff0c;给个人和企业带来了巨大的风险。本文…

等保案例 6

用户简介 江苏省监狱管理局是江苏省司法厅管理下的副厅级部门管理机构&#xff0c;是主管全省监狱工作的机关。随着信息化的发展&#xff0c;江苏省监狱管理局的监狱业务对网络和信息系统的依赖不断增加&#xff0c;网络流转的信息量不断增大&#xff0c;信息化建设的需求也日…

python编程小游戏 五子棋,python编程小游戏简单的

大家好&#xff0c;本文将围绕python编程小游戏如何停止展开说明&#xff0c;python编程小游戏日语教程是一个很多人都想弄明白的事情&#xff0c;想搞清楚python编程小游戏超级玛丽需要先了解以下几个事情。 今天分享一个有趣的Python游戏库freegames&#xff0c;它里面包含经…

μCOS-Ⅲ_简介

μCOS-Ⅲ简介 文章目录 μCOS-Ⅲ简介前言一、什么是 C/OS-III&#xff1f;二、C/OS-III的特点三、C/OS-III的版本和参考资料1、C/OS-III版本2、C/OS-III源码获取3、C/OS-III参考资料 四、C/OS-III源码简介总结 前言 μcos-III是一个可以基于ROM运行的、可裁剪的、抢占式、实时…

mysql 数据备份和恢复

操作系统&#xff1a;22.04.1-Ubuntu mysql 版本&#xff1a;8.033 binlog 介绍 binlog 是mysql 二进制日志 binary log的简称&#xff0c;可以简单理解为数据的修改记录。 需要开启binlog,才会产生文件&#xff0c;mysql 8.0 默认开启,开启后可以在 /var/lib/mysql &#xff…