zoukankan      html  css  js  c++  java
  • mysql 链接超过ip限制时的报错

    报错信息:
    Fatal error: Uncaught exception 'PDOException' with message 'SQLSTATE[HY000] [1129] Host '127.0.0.1' is blocked because of many connection errors; unblock with 'mysqladmin flush-hosts'' in /home/htdocs/kelala/sub/Simplelzf/Db/DBObject.php on line 56
    PDOException: SQLSTATE[HY000] [1129] Host '127.0.0.1' is blocked because of many connection errors; unblock with 'mysqladmin flush-hosts' in /home/htdocs/kelala/sub/Simplelzf/Db/DBObject.php on line 56

    错误原因:同一个ip在短时间内产生太多(超过mysql数据库max_connection_errors 的最大值)中断的数据库连接而导致的阻塞。
    解决方法如下:
    1,提高max_connection_errors数量,先查看该属性设置为多大,命令:show
    global variables like '%max_connect_errors%';
    2,当客户端连接服务端超时(超过contect_timeout),服务端就会给这个客户端记录一次error,当出错次数达到max_connect_errors的时候,客户端就会被锁定,mysql默认这个值为10,可以根据需求设置的大一点,比如1000,但是设置大了之后,被攻击时的安全性能会降低),使用命令:set global max_connect_errors = 1000;
    设置以后马上生效,也可以查一下是否修改成功,使用命令:show global variables like '%max_content_errors%';
    3,也可以使用缓存的方法,这样就会把计数清理掉,命令1,到安装bin的木兰路下,使用mysqladmin -u root -p flsh-hosts命里密码输入后,完成缓存。
    4,也可以打开数据库,直接执行sql语句: flush hosts;

  • 相关阅读:
    GolandQuick编辑器快捷键
    GitStand
    高阶函数
    文本和字节序列
    元组用法
    映射的弹性键查询
    字典的setdefault()
    数组、内存视图、双向队列
    Python之random.seed()用法
    用bisect来管理已排序的序列
  • 原文地址:https://www.cnblogs.com/ayanboke/p/9071692.html
Copyright © 2011-2022 走看看