zoukankan      html  css  js  c++  java
  • MySQL中连接超时自动断开的解决方案

    前言:

    MySQL数据库一般默认的连接超时时间为3600s(1小时),但是在进行大规模的线程事务操作时,一个连接会一直等待执行,这时候如果数据库的超时时间设置的过短,就可能会出现Mysql数据连接自动被释放,影响后面对数据库的操作。

    当然MySQL连接设置的大小,要根据需求场景进行设置,wait_timeout过大也有弊端,其体现就是MySQL里大量的SLEEP进程无法及时释放,拖累系统性能,不过也不能把这个指设置的过小,否则你可 能会遭遇到“mysql has gone away”之类的问题。

    所以需要根据自己项目业务场景,进行适当的设置超时时间。

    首先介绍下如何查看mysql的超时时间方法

    在mysql命令提示符下执行以下命令即可:

    SHOW GLOBAL VARIABLES LIKE '%timeout%'

    其次连接超时wait_timeout设置方法如下:

    方案1.在mysql命令提示符执行以下命令即可(临时方法,重启MySQL服务器会失效,恢复默认值)

    SET GLOBAL wait_timeout=15000

    方案2.修改mysql的配置文件(推荐方法)

    • Windows下,配置文件路径为MySQL安装的根目录中。my.ini
    • Linux系统下,配置文件为路径/etc/my.cnf
    [mysqld]
    
    wait_timeout=10000
    interactive_timeout=10000

    保存退出,重启MySQL服务即可

  • 相关阅读:
    JavaScript中的Date对象
    补零函数和随机数函数
    设置与获取自定义属性
    eval()
    获取DOM元素样式
    do{}while() 循环
    ++ 运算符
    switch 语句
    git
    webpack
  • 原文地址:https://www.cnblogs.com/wenzheshen/p/11066585.html
Copyright © 2011-2022 走看看