異常名稱
//數據源拒絕從服務器建立連接、消息:“連接太多” com.MySQL.jdbc.exceptions.jdbc4.MySQLNonTransientConnectionException: Data source rejected establishment of connection, message from server: "Too many connections"
原因一
- MYSQL安裝目錄打開MY.INI。
- 找到max_connections(在大約第93行)默認是100 一般設置到500~1000比較合適。
-
max_connections=1000
- 重啟mysql,這樣1040錯誤就解決啦。
原因二
還有一個可能就是代碼里打開了太多的連接,但是忘記了在finally塊里面關閉,從而導致在處理大數據的時候,拋出異常。下面這樣的代碼就不會有異常了。
try{ conn=Good.getConnection(); stmt = conn.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE, ResultSet.CONCUR_UPDATABLE); String sql1="insert into cat_garbage values('"+rs.getInt("id")+"','"+rs.getInt("cid")+"','"+rs.getString("name")+"','"+rs.getString("keyword")+"')"; stmt.executeUpdate(sql1); } catch(SQLException|ClassNotFoundException|IOException e) { e.printStackTrace(); } finally { if(stmt!= null) stmt.close(); if(conn!= null) conn.close(); } }
本文章參考:吳孟達