最近在用mysql的时候,双击表突然出现1040 too many connection的错误,看错误的意思是连接的人数太多了。
当最大连接数比较小时,可能会出现“1040 too many connection”错误。
1、首先需要重启MySQL服务,执行命令:
[root@iZ23 ~]# service mysql restart
或者:
[root@iZ23 ~]# service mysqld restart
2、登录mysql,
[root@iZ23 ~]# mysql -uroot -p
输入密码,回车;
3、登录成功后执行以下语句查询当前的最大连接数:
mysql> select VARIABLE_VALUE from information_schema.GLOBAL_VARIABLES where VARIABLE_NAME='MAX_CONNECTIONS';
+----------------+
| VARIABLE_VALUE |
+----------------+
| 151 |
+----------------+
1 row in set (0.00 sec)
4、执行以下语句修改最大连接数:
mysql> set global max_connections = 3600;
Query OK, 0 rows affected (0.00 sec)
好了,再打开表就不会报错了
补充:升级5.7后报错
mysql> select VARIABLE_VALUE from information_schema.GLOBAL_VARIABLES where VARIABLE_NAME='MAX_CONNECTIONS';
ERROR 3167 (HY000): The 'INFORMATION_SCHEMA.GLOBAL_VARIABLES' feature is disabled; see the documentation for 'show_compatibility_56'
mysql>
mysql> show variables like '%show_compatibility_56%';
+-----------------------+-------+
| Variable_name | Value |
+-----------------------+-------+
| show_compatibility_56 | OFF |
+-----------------------+-------+
1 row in set (0.00 sec)
mysql>
mysql> set global show_compatibility_56=on;
Query OK, 0 rows affected (0.00 sec)
mysql> show variables like '%show_compatibility_56%';
+-----------------------+-------+
| Variable_name | Value |
+-----------------------+-------+
| show_compatibility_56 | ON |
+-----------------------+-------+
1 row in set (0.00 sec)
mysql>
mysql> select * from information_schema.global_status limit 3;