hive 元数据库 Too many connections

栏目: 服务器 · 发布时间: 5年前

内容简介:元数据换成mysql,请参考:5月 01 01:36:14 namenode1 start.sh[402144]: Caused by: com.mysql.jdbc.exceptions.jdbc4.MySQLNonTransientConnectionException: Too many connections5月 01 01:36:14 namenode1 start.sh[402144]: at sun.reflect.NativeConstructorAccessorImpl.newInstan

元数据换成mysql,请参考: hive mysql 安装配置 ,spark从kafka读取数据后,入库hdfs时,会连接 mysql 元数据库,spark采用的是长连接,当spark关闭时,连接会处于睡眠状态。长时间不处理,mysql的连接数就会被占满。

1,java报错如下

5月 01 01:36:14 namenode1 start.sh[402144]: Caused by: com.mysql.jdbc.exceptions.jdbc4.MySQLNonTransientConnectionException: Too many connections

5月 01 01:36:14 namenode1 start.sh[402144]: at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)

5月 01 01:36:14 namenode1 start.sh[402144]: at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)

5月 01 01:36:14 namenode1 start.sh[402144]: at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)

5月 01 01:36:14 namenode1 start.sh[402144]: at java.lang.reflect.Constructor.newInstance(Constructor.java:423)

5月 01 01:36:14 namenode1 start.sh[402144]: at com.mysql.jdbc.Util.handleNewInstance(Util.java:411)

5月 01 01:36:14 namenode1 start.sh[402144]: at com.mysql.jdbc.Util.getInstance(Util.java:386)

5月 01 01:36:14 namenode1 start.sh[402144]: at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:1015)

5月 01 01:36:14 namenode1 start.sh[402144]: at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:4187)

5月 01 01:36:14 namenode1 start.sh[402144]: at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:4119)

5月 01 01:36:14 namenode1 start.sh[402144]: at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:927)

5月 01 01:36:14 namenode1 start.sh[402144]: at com.mysql.jdbc.MysqlIO.proceedHandshakeWithPluggableAuthentication(MysqlIO.java:1709)

5月 01 01:36:14 namenode1 start.sh[402144]: at com.mysql.jdbc.MysqlIO.doHandshake(MysqlIO.java:1252)

5月 01 01:36:14 namenode1 start.sh[402144]: at com.mysql.jdbc.ConnectionImpl.coreConnect(ConnectionImpl.java:2488)

5月 01 01:36:14 namenode1 start.sh[402144]: at com.mysql.jdbc.ConnectionImpl.connectOneTryOnly(ConnectionImpl.java:2521)

5月 01 01:36:14 namenode1 start.sh[402144]: at com.mysql.jdbc.ConnectionImpl.createNewIO(ConnectionImpl.java:2306)

5月 01 01:36:14 namenode1 start.sh[402144]: at com.mysql.jdbc.ConnectionImpl.<init>(ConnectionImpl.java:839)

5月 01 01:36:14 namenode1 start.sh[402144]: at com.mysql.jdbc.JDBC4Connection.<init>(JDBC4Connection.java:49)

5月 01 01:36:14 namenode1 start.sh[402144]: at sun.reflect.GeneratedConstructorAccessor56.newInstance(Unknown Source)

5月 01 01:36:14 namenode1 start.sh[402144]: at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)

5月 01 01:36:14 namenode1 start.sh[402144]: at java.lang.reflect.Constructor.newInstance(Constructor.java:423)

5月 01 01:36:14 namenode1 start.sh[402144]: at com.mysql.jdbc.Util.handleNewInstance(Util.java:411)

5月 01 01:36:14 namenode1 start.sh[402144]: at com.mysql.jdbc.ConnectionImpl.getInstance(ConnectionImpl.java:421)

5月 01 01:36:14 namenode1 start.sh[402144]: at com.mysql.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:350)

5月 01 01:36:14 namenode1 start.sh[402144]: at java.sql.DriverManager.getConnection(DriverManager.java:664)

5月 01 01:36:14 namenode1 start.sh[402144]: at java.sql.DriverManager.getConnection(DriverManager.java:208)

5月 01 01:36:14 namenode1 start.sh[402144]: at com.jolbox.bonecp.BoneCP.obtainRawInternalConnection(BoneCP.java:361)

5月 01 01:36:14 namenode1 start.sh[402144]: at com.jolbox.bonecp.BoneCP.<init>(BoneCP.java:416)

5月 01 01:36:14 namenode1 start.sh[402144]: ... 100 more

2,查看一下mysql连接情况

mysql> show processlist;
+------+----------+-----------------+------+-------------+---------+---------------------------------------------------------------+------------------+
| Id   | User     | Host            | db   | Command     | Time    | State                                                         | Info             |
+------+----------+-----------------+------+-------------+---------+---------------------------------------------------------------+------------------+
|   42 | rep_user | namenode2:50226 | NULL | Binlog Dump | 1402393 | Master has sent all binlog to slave; waiting for more updates | NULL             |
| 6709 | hive     | datanode1:32942 | hive | Sleep       |    3433 |                                                               | NULL             |
| 6710 | hive     | datanode1:32944 | hive | Sleep       |    3433 |                                                               | NULL             |
| 6711 | hive     | datanode1:32946 | hive | Sleep       |    3433 |                                                               | NULL             |
| 6712 | hive     | datanode1:32948 | hive | Sleep       |    3433 |                                                               | NULL             |
| 6713 | hive     | datanode1:32950 | hive | Sleep       |    3416 |                                                               | NULL             |
| 6714 | hive     | datanode1:32952 | hive | Sleep       |    3416 |                                                               | NULL             |
| 6715 | hive     | datanode1:32954 | hive | Sleep       |    3414 |                                                               | NULL             |
| 6716 | hive     | datanode1:32956 | hive | Sleep       |    3414 |                                                               | NULL             |
| 6717 | hive     | datanode1:32958 | hive | Sleep       |    3193 |                                                               | NULL             |
| 6718 | hive     | datanode1:32960 | hive | Sleep       |    3193 |                                                               | NULL             |
| 6719 | hive     | datanode1:32962 | hive | Sleep       |    3193 |                                                               | NULL             |
| 6720 | hive     | datanode1:32964 | hive | Sleep       |    3193 |                                                               | NULL             |
| 6721 | hive     | datanode1:32968 | hive | Sleep       |    3174 |                                                               | NULL             |
| 6722 | hive     | datanode1:32970 | hive | Sleep       |    3174 |                                                               | NULL             |

3,mysql长连接默认检测时间

mysql> show variables like 'wait_timeout';
+---------------+-------+
| Variable_name | Value |
+---------------+-------+
| wait_timeout  | 28800 |
+---------------+-------+
1 row in set (0.01 sec)

mysql> show variables like 'interactive_timeout';
+---------------------+-------+
| Variable_name       | Value |
+---------------------+-------+
| interactive_timeout | 28800 |
+---------------------+-------+
1 row in set (0.01 sec)

mysql默认设置中,如果一个数据库连接超过8小时没有使用,服务器将断开这条连接

4,解决办法

# vim /etc/my.cnf  //增加以下内容,并重启

[mysqld]
max_connections=1000
interactive_timeout=1800
wait_timeout=1800

增大连接数,并且半个小时检查一下长连接


以上所述就是小编给大家介绍的《hive 元数据库 Too many connections》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

XForms Essentials

XForms Essentials

Micah Dubinko / O'Reilly Media, Inc. / 2003-08-27 / USD 29.95

The use of forms on the Web is so commonplace that most user interactions involve some type of form. XForms - a combination of XML and forms - offers a powerful alternative to HTML-based forms. By pro......一起来看看 《XForms Essentials》 这本书的介绍吧!

RGB转16进制工具
RGB转16进制工具

RGB HEX 互转工具

MD5 加密
MD5 加密

MD5 加密工具

HEX CMYK 转换工具
HEX CMYK 转换工具

HEX CMYK 互转工具