流水账-20240314

news2024/9/20 5:46:01

目录

  • Linux系统删除文件后,磁盘大小没变化
  • mysql事务和neo4j事务冲突误诊
    • 描述
    • 解决方法
      • 网上提供的方法
      • 重置Neo4j密码,成功解决问题
        • 高版本
        • 低版本

Linux系统删除文件后,磁盘大小没变化

  • lsof +L1|grep 删除的文件名
  • kill进程
    在这里插入图片描述

mysql事务和neo4j事务冲突误诊

org.springframework.transaction.CannotCreateTransactionException: Could not open Neo4j Session for transaction; nested exception is org.neo4j.driver.v1.exceptions.AuthenticationException: The client is unauthorized due to authentication failure.
	at org.springframework.data.neo4j.transaction.Neo4jTransactionManager.doBegin(Neo4jTransactionManager.java:203)
	at org.sp...
	at org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:375)
	at org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:270)
	at org.eclipse.jetty.io.AbstractConnection$ReadCallback.succeeded(AbstractConnection.java:311)
	at org.eclipse.jetty.io.FillInterest.fillable(FillInterest.java:103)
	at org.eclipse.jetty.io.ChannelEndPoint$2.run(ChannelEndPoint.java:117)
	at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:806)
	at org.eclipse.jetty.util.thread.QueuedThreadPool$Runner.run(QueuedThreadPool.java:938)
	at java.lang.Thread.run(Thread.java:748)
Caused by: org.neo4j.driver.v1.exceptions.AuthenticationException: The client is unauthorized due to authentication failure.
	at org.neo4j.driver.internal.util.ErrorUtil.newNeo4jError(ErrorUtil.java:58)
	at org.neo4j.driver.internal.async.inbound.InboundMessageDispatcher.handleFailureMessage(InboundMessageDispatcher.java:142)
	at org.neo4j.driver.internal.messaging.PackStreamMessageFormatV1$ReaderV1.unpackFailureMessage(PackStreamMessageFormatV1.java:337)
	at org.neo4j.driver.internal.messaging.PackStreamMessageFormatV1$ReaderV1.read(PackStreamMessageFormatV1.java:301)
	at org.neo4j.driver.internal.async.inbound.InboundMessageHandler.channelRead0(InboundMessageHandler.java:83)
	at org.neo4j.driver.internal.async.inbound.InboundMessageHandler.channelRead0(InboundMessageHandler.java:35)
	at 

在这里插入图片描述

描述

在使用mybatis-plus提供的批量插入方法的时候,报了上面的neo4j的错,实际上并不涉及neo4j操作
在这里插入图片描述

解决方法

项目中配置了mysqlneo4j,怀疑是事务冲突导致的,然后走了一圈弯路,因为根本没用到neo4j,所以一直没管上面的报错(neo4j服务连不上),结果发现并不是事务冲突导致的,就是neo4j连不上导致的。重置neo4j密码,连接成功之后,问题解决。在事务提交阶段,可能会检查所有参与事务的数据源,是否都能正常提交,因此批量保存方法事务中,虽然只对 MySQL 执行了操作,但 Neo4j 连接有问题,也会在事务提交时,导致整个事务回滚!

网上提供的方法

  • 创建一个新的事务

    @Service
    public class YourService {
    
        @Autowired
        private DataSource mysqlDataSource; // 引入MySQL数据源
    
        @Autowired
        private PlatformTransactionManager transactionManager; // 引入事务管理器
    
        public void yourMethod(List<YourEntity> entities) {
            TransactionTemplate template = new TransactionTemplate(transactionManager);
            template.setIsolationLevel(TransactionDefinition.ISOLATION_DEFAULT);
            template.setPropagationBehavior(TransactionDefinition.PROPAGATION_REQUIRES_NEW);
            template.execute(new TransactionCallbackWithoutResult() {
                @Override
                protected void doInTransactionWithoutResult(TransactionStatus status) {
                    yourService.saveBatch(entities); // 调用带有@Transactional的方法
                }
            });
        }
    }
    
  • 确保注解@EnableTransactionManagement只作用在想要的数据源事务管理器上

  • 按照上面方法试了半天也没解决,因为压根不是事务冲突导致的,SpringBoot项目一般不需要配置这些,默认使用的事务就是配置的第一个数据源
    在这里插入图片描述
    在这里插入图片描述

重置Neo4j密码,成功解决问题

高版本
  • 停止 Neo4j 服务bin/neo4j stop
    在这里插入图片描述

  • 直接编辑 Neo4j 配置文件conf/neo4j.conf,找到 dbms.security.auth_enabled 参数,将其设置为 false 来禁用身份验证
    在这里插入图片描述

  • 启动 Neo4j 服务bin/neo4j start
    在这里插入图片描述

  • 登录页面
    通过浏览器访问 Neo4j 的图形界面(地址通常是 http://localhost:7474http://your_ip:7474),由于身份验证已禁用,可以直接进入。
    在这里插入图片描述

  • Cypher 语句修改密码

     ALTER USER neo4j SET PASSWORD 'new_password';
    
    CALL dbms.changePassword('neo4j', 'old_password', 'new_password');
    CALL dbms.changePassword('neo4j', '', 'new_password');
    

在这里插入图片描述

低版本

上面通过Cypher 语句修改密码失败,因为项目使用的Neo4j 3.5 版本,不支持Cypher 语句更改用户密码,通过以下替代方法修改:

  • 通过 REST API 删除原有用户(neo4j),然后再创建一个新的管理员用户,设置新密码
    在这里插入图片描述

    curl -X DELETE http://localhost:7474/user/neo4j
    
    curl -X POST -H "Content-Type: application/json" -d '{"password":"new_password", "username": "neo4j", "roles": ["admin"]}' http://localhost:7474/user
    
  • 直接清空 graph.db 目录(不建议,个人环境随意)

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

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

相关文章

面试题系列一之-css画三角形(原理解析)

用html写一个三角形的图标算是一个比较简单的,但是工作中用的还是比较多的&#xff0c;面试也可能会问&#xff0c;但了解背后的原理才能熟练使用 我们首先写一个div,设置边框 <body><div class"border"></div> </body> <style> .bo…

华宽通招商资源推介平台:一站式立体展示,招商资源尽在眼前

传统园区在招商引资推介过程中&#xff0c;主要以画册、PPT、视频等形式进行介绍&#xff0c;对于客商来说体验感不佳&#xff0c;难以通过地理信息、空间信息和图文信息结合的方式&#xff0c;更加直观和立体地呈现园区整体优势和每个载体资源的详细情况&#xff0c;导致客商无…

基于SpringBoot的“家政服务管理平台”的设计与实现(源码+数据库+文档+PPT)

基于SpringBoot的“家政服务管理平台”的设计与实现&#xff08;源码数据库文档PPT) 开发语言&#xff1a;Java 数据库&#xff1a;MySQL 技术&#xff1a;SpringBoot 工具&#xff1a;IDEA/Ecilpse、Navicat、Maven 系统展示 系统首页界面图 用户注册界面图 服务信息界面…

DeleteFile(szFilePath)失败,之后再对文件操作,造成崩溃

调用WINAPI函数DeleteFile(szFilePath1)之后&#xff1a; 1.如果不再对szFilePath1文件进行操作 DeleteFile()函数执行失败》也不会造成 软体崩溃&#xff01; 2.如果后续需要对szFilePath1文件进行操作 DeleteFile()函数执行失败》就会造成 软体崩溃&#xff01; 所以&…

【刷题训练】LeetCode:557. 反转字符串中的单词 III

557. 反转字符串中的单词 III 题目要求 示例 1&#xff1a; 输入&#xff1a;s “Let’s take LeetCode contest” 输出&#xff1a;“s’teL ekat edoCteeL tsetnoc” 示例 2: 输入&#xff1a; s “Mr Ding” 输出&#xff1a;“rM gniD” 思路&#xff1a; 第一步&am…

Clickhouse MergeTree 原理(一)

作者&#xff1a;俊达 MergeTree是Clickhouse里最核心的存储引擎。Clickhouse里有一系列以MergeTree为基础的引擎&#xff08;见下图&#xff09;&#xff0c;理解了基础MergeTree&#xff0c;就能理解整个系列的MergeTree引擎的核心原理。 本文对MergeTree的基本原理进行介绍…

目标检测——YOLOv3算法解读

论文&#xff1a;YOLOv3&#xff1a;An Incremental Improvement 作者&#xff1a;Joseph Redmon, Ali Farhadi 链接&#xff1a;https://arxiv.org/abs/1804.02767 代码&#xff1a;http://pjreddie.com/yolo/ YOLO系列其他文章&#xff1a; YOLOv1通俗易懂版解读SSD算法解读…

pgsql常用索引简写

文章来源&#xff1a;互联网博客文章&#xff0c;后续有时间再来细化整理。 在数据库查询中&#xff0c;合理的使用索引&#xff0c;可以极大提升数据库查询效率&#xff0c;充分利用系统资源。这个随着数据量的增加得到提升&#xff0c;越大越明显&#xff0c;也和业务线有关…

操作系统总结(第二周 第一堂)

前言&#xff1a; 第一周的重点就在于一张图表&#xff1a; 基于这张图&#xff0c;我们将陷入内核分为了两个大块Trap和Interrupt。同时我们知道一件事情任何一次I/O操作或者错误程序操作都将陷入内核&#xff0c;从而使得内核可以监控所有的外部设备以及维护整个电脑程序运行…

PowerPoint 2010

文章目录 一、界面介绍二、选项卡1. 文件选项卡2. 开始选项卡3. 插入选项卡4. 设计选项卡5. 切换选项卡6. 动画选项卡7. 幻灯片放映选项卡8. 视图选项卡9. 效果识别 三、幻灯片操作1.选择幻灯片2.移动(调整幻灯片顺序&#xff09;和复制3.删除幻灯片 四、幻灯片放映1.按次序放映…

FX110网:1月美国零售货币资金环比上升2.61%,嘉盛环比上升1.86%

美国商品期货交易委员会&#xff08;CFTC&#xff09;发布的最新月度报告显示&#xff0c;2024年1月零售货币存款与上月相比上升2.61%。 这份报告涵盖在美国运营的注册零售货币对交易商&#xff08;RFED&#xff09;和经纪自营商。包括嘉信理财&#xff08;CHARLES SCHWAB Futu…

由世界第一个AI软件工程师Devin引发的热潮背后----程序员到底会不会被代替?AI发展至如今是否初衷已变?

目录 一.Devin的登场是突破也是导火索 二.Devin的"逆天"能力 1、端到端构建和部署程序 2、自主查找并修复bug 3、训练和微调自己的AI模型 4、修复开源库 5、成熟的生产库也能做贡献 6、学习能力 三.Devin的出现甚至整个AI领域的进步,编程还有未来吗? 1.业…

PyQt6实战1

创建一个json处理的小工具 功能&#xff1a; 1.json格式化 2.jsonpath提取数据 3.保存文件 main.py from PyQt6.QtGui import QFocusEvent from PyQt6.QtWidgets import * from PyQt6.QtCore import * from PyQt6.QtGui import * import sys import json import time impo…

如何使用vscode创建Node.js服务并结合内网穿透实现远程访问本地服务

文章目录 前言1.安装Node.js环境2.创建node.js服务3. 访问node.js 服务4.内网穿透4.1 安装配置cpolar内网穿透4.2 创建隧道映射本地端口 5.固定公网地址 前言 Node.js 是能够在服务器端运行 JavaScript 的开放源代码、跨平台运行环境。Node.js 由 OpenJS Foundation&#xff0…

(学习日记)2024.03.11:UCOSIII第十三节:使用优先级的流程 (持续更新)

写在前面&#xff1a; 由于时间的不足与学习的碎片化&#xff0c;写博客变得有些奢侈。 但是对于记录学习&#xff08;忘了以后能快速复习&#xff09;的渴望一天天变得强烈。 既然如此 不如以天为单位&#xff0c;以时间为顺序&#xff0c;仅仅将博客当做一个知识学习的目录&a…

Baumer工业相机堡盟工业相机如何通过NEOAPISDK实现双快门采集两张曝光时间非常短的图像(C++)

Baumer工业相机堡盟工业相机如何通过NEOAPISDK实现双快门采集两张曝光时间非常短的图像&#xff08;C&#xff09; Baumer工业相机Baumer工业相机定序器功能的技术背景Baumer工业相机通过NEOAPI SDK使用定序器功能预期的相机动作技术限制定序器的工作原理 Baumer工业相机通过NE…

【CSP试题回顾】201712-1-最小差值

CSP-201712-1-最小差值 完整代码 #include<iostream> #include<vector> #include<cmath> using namespace std;int n, minDelta 10005;int main() { cin >> n;vector<int>arr(n);for (int i 0; i < n; i){cin >> arr[i];}for (i…

OD_2024_C卷_200分_7、5G网络建设【JAVA】【最小生成树】

package odjava;import java.util.Scanner;public class 七_5G网络建设 {public static void main(String[] args) {Scanner sc new Scanner(System.in);int n sc.nextInt(); // 基站数量&#xff08;节点数&#xff09;int m sc.nextInt(); // 基站对数量&#xff08;边数&…

26-1 SQL 注入攻击 - delete注入

环境准备:构建完善的安全渗透测试环境:推荐工具、资源和下载链接_渗透测试靶机下载-CSDN博客 一、注入原理: 对于后台来说,delete操作通常是将对应的id传递到后台,然后后台会删除该id对应的数据。 如果后台没有对接收到的 id 参数进行充分的验证和过滤,恶意用户可能会…

应用程序角度来看linux闲余内存

第三行所指的是从应用程序角度来看&#xff0c;对于应用程序来说&#xff0c;buffers/cached 是等于可用的&#xff0c;因为buffer/cached是为了提高文件读取的性能&#xff0c;当应用程序需在用到内存的时候&#xff0c;buffer/cached会很快地被回收。 所以从应用程序的角度来…