zoukankan      html  css  js  c++  java
  • mysql连接数问题备份

    一、 max_connections

    这是是查询数据库当前设置的最大连接数
    mysql> show variables like '%max_connections%';
    +-----------------+-------+
    | Variable_name   | Value |
    +-----------------+-------+
    | max_connections | 1000  |
    +-----------------+-------+
     
     
    可以在/etc/my.cnf里面设置数据库的最大连接数
    [mysqld]
    max_connections = 1000
     
    重启mysql即生效
     
     
    临时修改连接数上限
    set global max_connections=1000
    重启后失效
     
     

    #详细连接信息
    show full processlist;

    实战:

    vim /opt/lampp/etc/my.cnf

    #add by chong
    max_connections = 1000

    /opt/lampp/lampp stopmysql
    /opt/lampp/lampp startmysql

    二、 max_allowed_packet

    max_allowed_packet问题。。
    1. 查看目前配置
    show VARIABLES like '%max_allowed_packet%';
    
    1. 修改方法
    • 可以编辑my.cnf来修改(windows下my.ini),在[mysqld]段或者mysql的server配置段进行修改。在[mysqld]下加上
    max_allowed_packet=20M
    

    保存重启mysql。max_allowed_packet = 20M如果找不到my.cnf可以通过mysql --help | grep my.cnf去寻找my.cnf文件。

    • 在mysql 命令行中运行 .   20M
    set global max_allowed_packet = 2*1024*1024*10
    

    然后关闭掉这此mysql server链接,再进入 

    #16M

    mysql -h192.168.1.51 -uroot -e "set global max_allowed_packet = 1024*1024*16;show VARIABLES like '%max_allowed_packet%'" 

    三、 wait_timeout

    mysql -uroot -e "show global variables like 'wait_timeout';"
    mysql -uroot -e "set global wait_timeout=1814400; show global variables like 'wait_timeout';"

    异常如下:

    原因
    mysql5连接的等待时间(wait_timeout)默认是8小时。

    查看方法

    show global variables like 'wait_timeout'; 

    查看结果:
    +---------------+-------+
    | Variable_name | Value |
    +---------------+-------+
    | wait_timeout | 28800 |
    +---------------+-------+
    1 row in set (0.00 sec)
    在wait_timeout时间里,mysql的connection处于等待状态,过了这时间mysql5就关闭了,但是java application的连接池仍然有合法的connection,当你再操作数据库时,就会出现这样的问题。

    解决方法
    mysql5之前的版本,可以在jdbc连接的url中加入:autoReconnect = true

    mysql5中wait_timeout在window中最大为24天,在linux中最大为365天。

    a、修改配置

    如果在window中设置为21天,改mysql5的安装文件夹中的my.ini
    如果在linux中/etc/my.cnf,添加一行:wait_timeout = 1814400,重启mysql,添加效果如下:

    b、直接用sql命令行修改(重启有还原为28800,不推荐)

    mysql> set global wait_timeout=1814400;
    mysql> show global variables like 'wait_timeout';
  • 相关阅读:
    Android测试:从零开始3—— Instrumented单元测试1
    Android测试:从零开始2——local单元测试
    自定义封装 banner 组件
    常用表单 组件封装
    ContentProvider域名替换小工具
    接口回调封装
    日常记录-代码中Background后Padding 失效
    EditText 限制输入整数和小数 的位数
    (求助)对某一颜色,设置透明度 alpha 后,其他使用该颜色的地方 受到影响!!!!原因未知
    图片选择器ImageEditContainer
  • 原文地址:https://www.cnblogs.com/xingchong/p/11560056.html
Copyright © 2011-2022 走看看