SpringBoot解决mysql 连接8小时问题

SpringBoot解决mysql 连接8小时问题

问题: 服务连接mysql数据库,8小时没有数据库的操作时候,数据库会主动断开连接释放资源

解决办法总共4种方法

  1. MySQL 5版本之前可以通过在URL后面加入autoReconnect=true

  2. application.properties文件中加入:

    spring.datasource.test-on-borrow=true #(即在获取Connection对象时检测其可用性),不过这样会影响性能,但是这个配置是最有效的。
    spring.datasource.test-while-idle=true
    spring.datasource.time-between-eviction-runs-millis= 3600000
    
  3. ** 数据库配置调整:**

    如果你有权限访问 MySQL 服务器的配置,你也可以调整 MySQL 的连接超时时间。修改 wait_timeoutinteractive_timeout 参数,将它们设置为一个更大的值,以延长连接的存活时间。

    请注意,修改 MySQL 服务器的配置可能需要谨慎考虑,因为这会影响到所有连接

    my.ini 文件中修改此参数

    [mysqld]
    wait_timeout=31536000
    interactive_timeout=31536000
    
  4. 定时任务发送查询:

    如果你没有使用连接池,你可以创建一个定时任务,在一定时间间隔内发送一个查询来保持连接活跃。这可以使用 Spring 的 @Scheduled 注解来实现

    import org.springframework.jdbc.core.JdbcTemplate;
    import org.springframework.scheduling.annotation.Scheduled;
    import org.springframework.stereotype.Component;@Component
    public class KeepAliveTask {private final JdbcTemplate jdbcTemplate;public KeepAliveTask(JdbcTemplate jdbcTemplate) {this.jdbcTemplate = jdbcTemplate;}@Scheduled(fixedRate = 300000) // 5 minutespublic void keepConnectionAlive() {jdbcTemplate.queryForObject("SELECT 1", Integer.class);}
    }

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

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

相关文章

第6天----【位运算进阶之-----位与()】七夕特别版

今天我们来学习C语言的位与。 ❤️C语言的位与(&)操作是一种按位运算符,用于对两个操作数的每个对应位执行逻辑与操作。它的操作规则如下: 如果两个操作数的对应位都为1,则结果的对应位也为1。(全1才…

【Cadence】差分管噪声贡献差别很大的可能原因

举例:M2 M3是一对差分管,噪声贡献差别很大。 理想电感下二者贡献相同, 但在实际电磁仿真后,一个17.6%,一个5.6% 原因是: 电磁仿真存在交叉,不对称,中心抽头不是理想的交流地&#x…

初识C语言

目录 一、C语言的概念 二、第一个C语言程序 三、数据类型 四、变量和常量 4.1 变量定义方法 4.2 变量的命名 4.3 变量的分类 4.4 变量的作用域和生命周期 4.5 常量 五、字符串和转义字符 5.1 字符串 5.2 转义字符 六、注释 七、选择语句 八、循环语句 九、函数 十、数…

如何使用CSS实现一个全屏滚动效果(Fullpage Scroll)?

聚沙成塔每天进步一点点 ⭐ 专栏简介⭐ 实现全屏滚动效果的CSS和JavaScript示例⭐ HTML 结构⭐ CSS 样式 (styles.css)⭐ JavaScript 代码 (script.js)⭐ 实现说明⭐ 写在最后 ⭐ 专栏简介 前端入门之旅:探索Web开发的奇妙世界 记得点击上方或者右侧链接订阅本专栏哦…

node_modules.cache是什么东西

一开始没明白这是啥玩意,还以为是npm的属性,网上也没说过具体的来源出处 .cache文件的产生是由webpack4的插件cache-loader生成的,node_modules里下载了cache-loader插件,很多朋友都是vuecli工具生成的项目,内置了这部…

以创新点亮前路,戴尔科技开辟数实融合新格局

编辑:阿冒 设计:沐由 2023年,对于戴尔科技而言是特殊的一年,这是戴尔科技进入中国市场第25个年头——“巧合”的是,这25年也是中国产业经济发展最快,人们工作与生活发生变化最大的四分之一个世纪。 2023年&…

《Go 语言第一课》课程学习笔记(九)

常量:Go 在“常量”设计上的创新有哪些? Go 语言在常量方面的创新包括下面这几点: 支持无类型常量;支持隐式自动转型;可用于实现枚举。 常量 Go 语言的常量是一种在源码编译期间被创建的语法元素。这是在说这个元素…

mysql全文检索使用

数据库数据量10万左右,使用like %test%要耗费30秒左右,放弃该办法 使用mysql的全文检索 第一步:建立索引 首先修改一下设置: my.ini中ngram_token_size 1 可以通过 show variables like %token%;来查看 接下来建立索引:alter table 表名 add f…

RocketMQ与Kafka对比(18项差异)

淘宝内部的交易系统使用了淘宝自主研发的Notify消息中间件,使用MySQL作为消息存储媒介,可完全水平扩容,为了进一步降低成本,我们认为存储部分可以进一步优化,2011年初,Linkin开源了Kafka这个优秀的消息中间件,淘宝中间件团队在对Kafka做过充分Review之后,Kafka无限消息…

Python 离线环境下批量安装第三方模块

当前环境:Win10 x64 Python 3.7 ,准备将这些包安装到 Win7 x86 Python 3.7 机器上。 1 查看安装好 Python 后的包C:\Users\lenovo>pip list Package Version ---------- ------- pip 23.2.1 setuptools 47.1.0 wheel 0.40.02 pip 安装所需要的…

8.18 校招 内推 面经

绿泡泡: neituijunsir 交流裙,内推/实习/校招汇总表格 1、校招 | 小米集团2024届全球校园招聘正式启动(内推) 校招 | 小米集团2024届全球校园招聘正式启动(内推) 2、2023校招总结--软件测试岗位 - 2 2…

.Net程序调试时接受外部命令行参数方式

1.对项目右键,属性 2.在调试中打开常规,打开调试启动配置文件UI 3.输入需要的命令行参数

el-table数据更新了,但是展示并没有更新

这是因为有时候vue无法监听到数据的变化,导致数据变化但是视图没有变化 解决办法:(可以从上往下一条一条进行尝试) 法一:使用this.$set进行数据的更新 法二:在数据更新完后执行this.$forceUpdate();进行强制…

交叉编译工具链arm-linux-gnueabihf的安装-ubuntu 20.04

前面下载安装步骤参考该博主的文章 http://t.csdn.cn/ZbjFX 另:本人对所遇到的环境变量的配置问题作补充 1.修改环境变量 建议直接在.bashrc文件作修改 ,修改方式相同 ( vi :视自己的编辑器而定) sudo vi ~/.bashrc 2.修改环境变量后,可…

网络安全领域的常见攻击方式及防御手段

目录 重放攻击(Replay Attack)防御手段 SQL 注入(SQL Injection)防御手段 跨站脚本攻击(Cross-Site Scripting,XSS)防御手段 跨站请求伪造(Cross-Site Request Forgery,C…

idea 左下角的Git(Version Control)中显示Local Changes窗口

打开Local Changes窗口来查看当前Git仓库的本地变更。 使用快捷键: - Windows: Alt9 - Mac: Cmd9 解决: (1)idea打开settings (2)点击Version Control窗口选项卡,选择Commit选项,对 Use.... in…

springBoot防止重复提交

自定义注解AOPRedis 自定义注解 package com.wzw.config.anno;import java.lang.annotation.*;/*** 自定义注解防止表单重复提交*/ Target(ElementType.METHOD) // 注解只能用于方法 Retention(RetentionPolicy.RUNTIME) // 修饰注解的生命周期 Documented public interface …

【微服务学习笔记】认识微服务

【微服务学习笔记】认识微服务 单体架构 分布式架构 微服务架构 SpringCloud 服务拆分和注意事项 服务拆分的案例demo 各个服务之间的数据库都是相互独立的,你不能直接访问对方的数据库,只能从一个服务像另外一个服务发起远程调用 在订单模块的服务中 …

深入浅出Pytorch函数——torch.nn.Linear

分类目录:《深入浅出Pytorch函数》总目录 对输入数据做线性变换 y x A T b yxA^Tb yxATb 语法 torch.nn.Linear(in_features, out_features, biasTrue, deviceNone, dtypeNone)参数 in_features:[int] 每个输入样本的大小out_features :…

【宝藏系列】一文讲透C语言数组与指针的关系

【宝藏系列】嵌入式 C 语言代码优化技巧【超详细版】 文章目录 【宝藏系列】嵌入式 C 语言代码优化技巧【超详细版】👨‍🏫前言1️⃣指针1️⃣1️⃣指针的操作1️⃣2️⃣关于指针定义的争议1️⃣3️⃣对教材错误写法的小看法 2️⃣指针和数组的区别2️⃣…