Centos7安装mongodb7.0.2教程以及基础java远程使用

news2024/12/26 21:48:34

由于项目性能需求,尝试研究mongodb的使用,与mysql的存储和读取性能进行比较。安装完成发现,其批量写入数据功能确实比mysql快,但是读取性能并不如mysql,但是由于其是文件型数据库,可能在内存操作点啥,会加快读取效率吧,直接读效率确实不太行。

但是既然研究了,得到的知识分享下,因为发现网上都是些在线安装或者使用4.几版本。

安装步骤

下载安装包:

mongodb-linux-x86_64-rhel70-7.0.2.tgz

mongosh-2.0.2-linux-x64.tgz

下载网站:MongoDB Enterprise Downloads | MongoDB

将安装包拖到centos系统内,使用命令解压

添加环境变量,找到/etc/profile文件,打开添加如下内容

#mongodb
export PATH=$PATH:/opt/mongodb-linux-x86_64-rhel70-7.0.2/bin
export PATH=$PATH:/opt/mongosh-2.0.2-linux-x64/bin

/opt/xxxxxx/bin,分别是俩个安装包内的bin文件夹。

配置完成后在终端应可看到mongod、mongosh指令

编写mongo启动配置文件,创建文件mongodb.conf

文件内容如下:

dbpath = /data/db #数据文件存放目录
logpath = /logs/mongodb.log #日志文件存放目录
port = 27017 #端口
fork = true #以守护程序的方式启用,即在后台运行
auth=true #需要认证。如果放开注释,就必须创建MongoDB的账号,使用账号与密码才可远程访问,第一次安装建议注释
bind_ip=0.0.0.0 #允许远程访问,或者直接注释,127.0.0.1是只允许本地访问

注:dbpath和logpath都需要手动创建一下,第一次运行时建议注释掉“auth=true”,想要验证时,再创建必要的帐号密码

启动mongo指令:

mongod --config xxxx/mongodb.conf

使用指令按照指定配置文件启动mongodb。

启动后使用“netstat -npl”,应能看到port所设置端口被启动监听

停止指令:

mongod --shutdown

终端使用

运行命令 “mongosh”

将自动进入本机的mongo服务,

创建用户如下:

创建了这个账户,就可以将配置文件内的“auth=true”注释去掉。

关闭和启动mongo后就可使用帐号密码登录。

其他终端指令操作,可自行百度和问Ai。

远程客户端访问

下载一个mongoDB Compass

安装包:mongodb-compass-1.40.4-win32-x64.exe

网站:MongoDB Compass Download (GUI) | MongoDB

该软件全为英文,可使用查看数据添加数据,其他复杂操作请自行研究。

执行exe将自动默认安装,桌面将自动打开。

输入访问地址:

mongodb://testmongo:123456@1.5.1.226:27017/

Java远程操作

引用maven包

 <dependency>
    <groupId>org.mongodb</groupId>
    <artifactId>mongodb-driver-sync</artifactId>
    <version>4.10.2</version>
 </dependency>

连接mongo

public static MongoClient mongoClient = null;
public static void initdb() {
		mongoClient = MongoClients.create("mongodb://testmongo:123456@1.5.1.226:27017/");
	}

连接表文件,连接表文件写入数据时,将直接创建对应的表文件

MongoCollection<Document> collection = mongoClient.getDatabase("logaudit").getCollection("logauditdb");

写入数据

Document document = new Document("name", data.name).append("notes", data.notes)
						.append("type", data.type).append("rdevid", data.rdevid).append("priority", data.priority)
						.append("ip", data.ip).append("port", data.port).append("r_protocol_id", data.r_protocol_id)
						.append("sign_lag", data.sign_lag).append("r_cert_id", data.r_cert_id)
						.append("channeltype", data.channeltype).append("linktype", data.linktype)
						.append("protocolset", data.protocolset).append("collectCycle", data.collectCycle)
						.append("takeovertype", data.takeovertype);
				collection.insertOne(document);

添加单个索引

collection.createIndex(Indexes.ascending("fieldName")); // 将 "fieldName" 替换为您要创建索引的字段名
	        collection.createIndex(Indexes.ascending("fieldName"));

添加关联索引

collection.createIndex(new Document("devId", 1).append("type_name", 1));

关联查询

Bson query = Filters.and(Filters.eq("devId", 71),Filters.eq("type_name", "日志"));
	       
	        
//	        Document executionPlan = collection.find(query).explain();
	        FindIterable<Document> cursor = collection.find(query);

	     // 遍历查询结果
	        for (Document document : cursor) {
	            System.out.println("查询结果:" + document);

	        }

查看该查询使用的方案

Document executionPlan = collection.find(query).explain();
	        System.out.println(executionPlan.toJson());

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

超声波测距与倒车雷达电路1

文章目录 超声测距 超声测距 超声测距跟倒车雷达绝大多数用的都是40kHz 接受是一个同相比例整流后加上一个比较器 换能器自带滤波&#xff0c;需要激发信号与换能器信号匹配 这个电路图是错的&#xff0c;一直不停的发&#xff0c;底下来不及收 频率越高传输距离…

Pritunl搭建OpenVPN服务器详细流程,快速实现公网远程连接!

文章目录 前言1.环境安装2.开始安装3.访问测试4.创建连接5.局域网测试连接6.安装cpolar7.配置固定公网访问地址8.远程连接测试 前言 Pritunl是一款免费开源的 VPN 平台软件&#xff08;但使用的不是标准的开源许可证&#xff0c;用户受到很多限制&#xff09;。这是一种简单有…

mac加速器哪个好用?Mac提升运行速度的十大小技巧

经常听到小伙伴在抱怨PC电脑很慢&#xff0c;但是其实Mac电脑随着用的时间增长&#xff0c;运行速度也会越来越慢&#xff0c;那么造成Mac运行慢的原因有很多&#xff0c;可能是操作系统过时未更新&#xff0c;也可能是内存&#xff08;RAM&#xff09;不足&#xff0c;以下小编…

C++智能指针[下](shared_ptr/weak_ptr/循环引用/删除器)

文章目录 4.智能指针[shared_ptr]4.1设计理念成员属性 4.2主要接口拷贝构造 4.3引用计数线程安全问题测试线程安全通过对计数引用的加锁保护使得类线程安全类实例化的对象使用时需要手动加锁保护 "锁"的引进线程引用传参问题 4.4整体代码 5.循环引用问题5.1问题的引入…

算法通关村第二关-黄金挑战K个一组反转

大家好我是苏麟 , 今天带来K个一组反转 , K个一组反转 可以说是链表中最难的一个问题了&#xff0c;每k 个节点一组进行翻转&#xff0c;请你返回翻转后的链表。k 是一个正整数&#xff0c;它的值小于或等于链表的长度。如果节点总数不是 k 的整数倍&#xff0c;那么请将最后…

为“数字盲道”修“护栏”,隐语YACL护航无障碍数字服务隐私安全

“隐语”是开源的可信隐私计算框架&#xff0c;内置 MPC、TEE、同态等多种密态计算虚拟设备供灵活选择&#xff0c;提供丰富的联邦学习算法和差分隐私机制 开源项目&#xff1a;github.com/secretflowgitee.com/secretflow 10月19日&#xff0c;杭州第4届亚洲残疾人运动会火炬…

cola架构:有限状态机(FSM)源码分析

目录 0. cola状态机简述 1.cola状态机使用实例 2.cola状态机源码解析 2.1 语义模型源码 2.1.1 Condition和Action接口 2.1.2 State 2.1.3 Transition接口 2.1.4 StateMachine接口 2.2 Builder模式 2.2.1 StateMachine Builder模式 2.2.2 ExternalTransitionBuilder-…

重生奇迹MU上武器加13有加成吗?

重生奇迹一身加13的额外属性在哪看 装备页面。在角色扮演类游戏《重生奇迹mu》中&#xff0c;玩家可以在装备页面查看一身加13的额外属性&#xff0c;该道具能为玩家提供攻击力加成&#xff0c;输出更多的伤害。 重生奇迹13绝望之仗需要多少力量 16力量。重生奇迹mu加13绝望…

掌动智能APP自动化测试工具的主要功能

掌动智能APP自动化测试工具是一类用于自动执行测试脚本和验证移动应用程序的工具。它们模拟用户与应用程序的交互&#xff0c;以便检查应用程序的功能、性能和稳定性。这些工具可以用于各种移动平台&#xff0c;包括iOS和Android。本文将介绍APP自动化测试工具的主要功能有哪些…

大数据-Storm流式框架(四)---storm容错机制

1、集群节点宕机 Nimbus服务器 硬件 单点故障&#xff1f;可以搭建HA jStorm搭建 nimbus的HA nimbus的信息存储到zookeeper中&#xff0c;只要下游没问题&#xff08;进程退出&#xff09;nimbus退出就不会有问题&#xff0c; 如果在nimbus宕机&#xff0c;也不能提交…

DC-9 靶机

DC_9 信息搜集 存活检测 详细扫描 后台网页扫描 漏洞利用 漏洞发现 在 search 页面的输入框尝试 sql 注入 1 or 11#返回大量数据 sqlmap 爆破数据库 sqlmap -u http://10.4.7.154/search.php --dbs --batch 爆破失败&#xff0c;显示未找到参数 抓包查看 爆破数据库 …

iPhone手机屏幕分辨率

ios app测试时&#xff0c;需要测试应用在不同型号的苹果手机上的表现形式&#xff0c;可以自己在浏览器上配置。 代数设备逻辑像素尺寸缩放发布时间第一代iPhone 2G320 x 480480 x 3203.5寸1x2007年6月29日第二代iPhone 3320 x 480480 x 3203.5寸1x2008年7月11日第三代iPhone …

ThinkPHP8学习笔记

ThinkPHP8官方文档地址&#xff1a;ThinkPHP官方手册 一、composer换源 1、查看 composer 配置的命令composer config -g -l 2、禁用默认源镜像命令composer config -g secure-http false 3、修改为阿里云镜像源composer config -g repo.packagist composer https://mirror…

JoySSL-新兴国产品牌数字证书

随着我国对数据安全重视程度的不断提升&#xff0c;国产SSL证书越来越受到广大政府机关和企业的青睐&#xff0c;成为提升网站数据安全能力的重要技术手段。那么什么是国产SSL证书&#xff1f;国产SSL证书和普通SSL证书又有什么区别呢&#xff1f; 什么是国产SSL证书&#xff…

封神工具:腾讯云服务器价格计算器_好工具分享

腾讯云价格计算器&#xff1a;可以计算腾讯云服务器不同CVM实例规格、CPU内存、公网带宽和系统盘费用明细表&#xff0c;可以一键计算出精准报价明细表&#xff0c;腾讯云服务器网txyfwq.com分享大家腾讯云服务器价格计算器入口链接、使用方法及限制说明&#xff1a; 腾讯云服…

优思学院:六西格玛培训中的“绿带”和“黑带”

在当今竞争激烈的商业世界中&#xff0c;提高效率、减少浪费是每个组织都追求的目标。为了达到这一目标&#xff0c;六西格玛管理方法为组织提供了一个卓越的工具。在六西格玛培训中&#xff0c;我们经常会听到“绿带”和“黑带”这两个术语。那么&#xff0c;究竟什么是绿带和…

现代挖掘机vr在线互动展示厅是实现业务增长的加速度

VR数字博物馆全景展示充分应用5G、VR全景、web3d开发和三维动画等技术&#xff0c;将实体博物馆整体还原到3D数字空间&#xff0c;让游客360全景漫游式参观&#xff0c;无论大小、贵重、破损的典藏展品都能通过3D建模技术&#xff0c;逼真重现到三维虚拟场景中&#xff0c;让参…

VSCode汉化设置

扩展中搜索并安装 Chinese… 快捷键 commandshiftp&#xff0c;输入框中输入config&#xff0c;选择Config Display Language 选择zh-cn&#xff0c;重启vscode

红米电脑硬盘剪切

Redmi R14 2023版固态硬盘剪切 工具准备操作结尾语 首先要说明&#xff0c;本文所说的操作不一定适合你的电脑&#xff0c;因为电子产品更新换代过快&#xff0c;你的硬盘不一定能剪切&#xff0c;在操作前一定要仔细观察硬盘的型号&#xff0c;是否为同款&#xff0c;我上了图…

HarmonyOS鸿蒙原生应用开发设计- 流转图标

HarmonyOS设计文档中&#xff0c;为大家提供了独特的流转图标&#xff0c;开发者可以根据需要直接引用。 开发者直接使用官方提供的流转图标内容&#xff0c;既可以符合HarmonyOS原生应用的开发上架运营规范&#xff0c;又可以防止使用别人的图标侵权意外情况等&#xff0c;减…