zoukankan      html  css  js  c++  java
  • Mysql 8个小时连接断开问题解析

    wait_timeout — 指的是mysql在关闭一个非交互的连接之前所要等待的秒数,其取值范围为1-2147483(Windows),1-31536000(linux),默认值28800。

    interactive_time — 指的是mysql在关闭一个交互的连接之前所要等待的秒数(交互连接如mysql gui tool中的连接),其取值范围随wait_timeout变动,默认值28800。

    比 如我们在终端上进入mysql管理,使用的即使交互的连接,这时候,如果没有操作的时间超过了interactive_time设置的时间就会自动断开。 当然我们可以在mysql_real_connect()中使用CLIENT_INTERACTIVE来设置位交互连接模式。

    如果你的mysql已经在生产环境运行,那我们可以进入mysql终端查看timeout的设置,命令如下:”show global variables like ‘%timeout%’;”

     

    这时候如果要修改timeout的值又不希望重启数据库服务器,那可以使用set global wait_timeout = 200;来修改,记得global哦,这是对mysql运行时全局变量的修改,如果没有global,则修改的变量只是当前这次开启的会话的而已

    mysql> set global wait_timeout=10;

    mysql> show global variables like 'wait_timeout';
    +----------------------------+-------+
    | Variable_name              | Value |
    +----------------------------+-------+
    | wait_timeout               | 10    |
    +----------------------------+-------+

    上面这样查看才能得到数值改动了,如果调用总的查看指令得不到改动信息。改动之后不能重启数据库,不然修改的值会继续变成默认值。

    修改操作:打开/etc/my.cnf,在属性组mysqld下面添加参数如下:

    [mysqld]

    interactive_timeout=28800000

    wait_timeout=28800000

     

    windows下在my.ini文中增加:

     

    interactive_timeout=28800000

    wait_timeout=28800000

    不过我发现上面windows系统中修改没有成功。

  • 相关阅读:
    【转载】消息队列使用的四种场景介绍
    Vue项目部署打包
    创建Vue项目vue-cli · Failed to download repo vuejs-templates/webpack: connect ETIMEDOUT
    数据库错误:ORA-12154
    oracle数据库一条sql语句批量插入数据
    Linux time scap
    winscp不能使用root登录
    Linux find ./ -name *.bak | xargs rm -rf
    Linux命令echo 3 > /proc/sys/vm/drop_caches
    redis查看服务器占用端口
  • 原文地址:https://www.cnblogs.com/wzyxidian/p/5407091.html
Copyright © 2011-2022 走看看