- 博客(21)
- 收藏
- 关注
原创 CentOS 7+ 安装 GreatSQL 8.0.32-26
GreatSQL 是基于 MySQL 8.0 打造的开源数据库,兼容 MySQL 协议,优化了性能、高可用(MGR 集群)等特性,适合生产环境部署。本文将详细讲解从环境准备、下载安装到配置优化、远程登录的完整流程,适配 CentOS 7+ 系统(systemd初始化),配置包含性能调优、日志规范、MGR 集群支持,新手也能快速上手。
2025-12-18 14:10:48
667
原创 mysql Error 1412: Table definition has changed, please retry transaction
TRUNCATE 属于 DDL 操作(而非 DML),执行时会重建表结构(清空数据、重置自增序列),本质上修改了表元数据,且会隐式提交事务。连接池缓存旧元数据数据库连接池(如 Druid、HikariCP)会复用数据库连接,若连接缓存了旧的表元数据(如表结构信息),而表结构已被 DDL 修改,使用旧连接执行查询时会因元数据不一致触发该错误。事务与 DDL 操作的冲突MySQL 中,ALTER TABLE 等 DDL 操作会修改表的元数据(如字段、索引、表结构定义等),并会获取表的 元数据锁(MDL 锁)。
2025-11-19 13:38:34
383
原创 利用多层缓存优化数据库访问,提高程序响应速度
在处理对数据一致性和及时性要求不高的场景时,通常会使用多层缓存机制。这种方式不仅能有效减轻数据库的压力,还能够显著提高程序的响应速度。通过在不同层次(如应用层缓存和服务器缓存)设置缓存,可以在数据频繁请求时减少数据库查询次数,确保系统的高效运行。同时,缓存的使用可以平衡性能和数据的实时性需求,尤其适用于那些对数据更新频率要求不高的业务场景。写在这里是防止有新手看到博客不会使用。定义一个工厂,用来创建和管理实例,此处只贴出创建的代码。
2025-07-30 16:44:33
240
原创 oracle问题排查常用指令记录
SELECT s.SID, sum(S.TIME_REMAINING) || '秒' "还要执行多久", sum(S.ELAPSED_SECONDS) || '秒' "已经执行了多久", SUM(ROUND(S.SOFAR * 100 / S.TOTALWORK, 0)) / COUNT(S.SID) || '%' "进度数值"//查看哪些被阻塞了的session,以及阻塞的session。(在某条sql阻塞的时候,或者死锁了的时候这里感觉会不准,sid值通过上一条(2.查询正在跑的sql)来查)
2025-02-27 15:51:41
400
原创 Java解析xml文件
今天写代码碰到一个小需求。因为三方系统提供的数据接口返回是个xml文档格式的数据。需要我们对xml文档解析并获取具体的内容进行展示。
2024-12-05 17:12:38
323
原创 Java基于poi导出带下拉框的excel
(下拉框值少的情况下可使用下列代码中性别创建方式,校验值比较多的情况下建议使用政治面貌及户籍类型方式创建下拉框,否则极有可能导出文件出现校验问题)在这个工具类里因为有身份证的存在,防止身份证被表格转换,给这列设置为了文本格式,然后时间格式添加了日期校验。如果有多个下拉框,只需要设置隐藏表单后加以验证规则即可。
2024-01-05 16:52:29
1623
1
原创 String转json格式数据
在对接第三方平台时碰到一个小问题。第三方接口返回的数据为字符串形式,如下图所示:我接收到数据后要拿到其中的一些值。这时候就要对字符串进行处理了。1、取出data数据并转为list集合。2、转为list形式集合。3、只拿其中某些字段的值。
2023-09-26 17:32:49
2419
1
原创 在静态方法中使用Spring或Spring Boot自动注入的属性
静态方法是属于类的,而普通方法则属于对象,spring注入只在容器中实例化变量的,并且静态是优先于对象存在的,所以直接在静态方法中调用注入的静态变量其实是null的。要想在静态方法中使用注入的属性有两种方式。
2023-06-21 15:13:21
1381
2
原创 找出list重复数据
今天写需求时碰到一个问题,用户可以通过表格导入设备数据,每个设备的资产编号不可重复,后端拿到表格数据要先进行数据判重,如果资产编号重复,重复的数据被抛出,并将失败数据添加失败原因后返回给前端展示。此处展示如何取出list集合中重复数据。
2023-06-20 18:08:25
4322
原创 Java8新特性的使用
stream流map映射(把流中数据做处理后返回一个流)noneMatch——检查是否没有匹配所有元素。anyMatch——检查是否至少匹配一个元素。归约(将流中元素反复结合起来,得到一个值)allmatch——检查是否匹配所有元素。findAny——返回当前流中的任意元素。findFirst——返回第一个元素。count——返回流中元素的总个数。max——返回流中最大值。min——返回流中最小值。2、类名静态方法名。3、类名构造方法名。stream筛选与切片。stream终止操作。...
2022-07-25 09:16:16
288
2
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅