如果您想了解方法'X.set_DbConnection和System.Data.Common.DbConnection'尝试访问方法'Y.get_Settings的知识,那么本篇文章将是您的不二之选。
如果您想了解方法'X.set_DbConnection和System.Data.Common.DbConnection'尝试访问方法'Y.get_Settings的知识,那么本篇文章将是您的不二之选。我们将深入剖析方法'X.set_DbConnection的各个方面,并为您解答System.Data.Common.DbConnection'尝试访问方法'Y.get_Settings的疑在这篇文章中,我们将为您介绍方法'X.set_DbConnection的相关知识,同时也会详细的解释System.Data.Common.DbConnection'尝试访问方法'Y.get_Settings的运用方法,并给出实际的案例分析,希望能帮助到您!
本文目录一览:- 方法'X.set_DbConnection(System.Data.Common.DbConnection)'尝试访问方法'Y.get_Settings()失败
- .conn.ManagedClientConnectionImpl@604ed9f0 java.net.ConnectException: Connection refused: connect
- .MySQLNonTransientConnectionException: Could not create connection to database server. Attempted reconnect 5 times. Giving up.
- CannotCreateTransactionException: Could not open JDBC Connection GetConnectionTimeoutException
- com.intellij.util.io.socketConnection.ConnectionStatus的实例源码
方法'X.set_DbConnection(System.Data.Common.DbConnection)'尝试访问方法'Y.get_Settings()失败
我创建了一个控制台应用程序,并使用EntityFramework 6.2(用于与MS SQL连接),MySql.Data
8.0.11和MySql.Data.Entity 6.10.7(用于与MySQL连接)。
在此应用程序中,我想创建一个像SQL作业这样的作业,但是我不想使用quertz.net。我有错误:
“尝试通过方法’MySql.Data.Entity.EFMySqlCommand.set_DbConnection(System.Data.Common.DbConnection)’访问方法’MySql.Data.MySqlClient.MySqlConnection.get_Settings()’失败。”
答案1
小编典典MySql.Data.Entity
6.10.7与MySql.Data
8.0.11 不兼容。
甲骨文改名包,以MySql.Data.EntityFramework
供v8.x.
您需要卸载MySql.Data.Entity
并安装MySql.Data.EntityFramework
。
.conn.ManagedClientConnectionImpl@604ed9f0 java.net.ConnectException: Connection refused: connect
DEBUG 2016-11-07 14:32:47,518 Get connection for route {}->http://127.0.0.1:8087->http://rdsearch.zhaopin.com:80DEBUG 2016-11-07 14:32:47,519 Connecting to 127.0.0.1:8087
DEBUG 2016-11-07 14:32:48,530 Connection org.apache.http.impl.conn.DefaultClientConnection@91161c7 closed
DEBUG 2016-11-07 14:32:48,531 Connection org.apache.http.impl.conn.DefaultClientConnection@91161c7 shut down
DEBUG 2016-11-07 14:32:48,532 Releasing connection org.apache.http.impl.conn.ManagedClientConnectionImpl@604ed9f0
java.net.ConnectException: Connection refused: connect
at java.net.DualStackPlainSocketImpl.connect0(Native Method)
at java.net.DualStackPlainSocketImpl.socketConnect(Unknown Source)
at java.net.AbstractPlainSocketImpl.doConnect(Unknown Source)
at java.net.AbstractPlainSocketImpl.connectToAddress(Unknown Source)
at java.net.AbstractPlainSocketImpl.connect(Unknown Source)
at java.net.PlainSocketImpl.connect(Unknown Source)
at java.net.SocksSocketImpl.connect(Unknown Source)
at java.net.Socket.connect(Unknown Source)
at org.apache.http.conn.scheme.PlainSocketFactory.connectSocket(PlainSocketFactory.java:117)
at org.apache.http.impl.conn.DefaultClientConnectionOperator.openConnection(DefaultClientConnectionOperator.java:177)
at org.apache.http.impl.conn.ManagedClientConnectionImpl.open(ManagedClientConnectionImpl.java:304)
at org.apache.http.impl.client.DefaultRequestDirector.tryConnect(DefaultRequestDirector.java:611)
at org.apache.http.impl.client.DefaultRequestDirector.execute(DefaultRequestDirector.java:446)
at org.apache.http.impl.client.AbstractHttpClient.doExecute(AbstractHttpClient.java:882)
at org.apache.http.impl.client.CloseableHttpClient.execute(CloseableHttpClient.java:82)
at org.apache.http.impl.client.CloseableHttpClient.execute(CloseableHttpClient.java:107)
at org.apache.http.impl.client.CloseableHttpClient.execute(CloseableHttpClient.java:55)
.MySQLNonTransientConnectionException: Could not create connection to database server. Attempted reconnect 5 times. Giving up.
com.mysql.jdbc.exceptions.jdbc4.MySQLNonTransientConnectionException: Could not create connection to database server. Attempted reconnect 5 times. Giving up. at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62) at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) at java.lang.reflect.Constructor.newInstance(Constructor.java:408) at com.mysql.jdbc.Util.handleNewInstance(Util.java:411) at com.mysql.jdbc.Util.getInstance(Util.java:386) at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:1015) at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:989) at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:975) at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:920) at com.mysql.jdbc.ConnectionImpl.connectWithRetries(ConnectionImpl.java:2385) at com.mysql.jdbc.ConnectionImpl.createNewIO(ConnectionImpl.java:2306) at com.mysql.jdbc.ConnectionImpl.<init>(ConnectionImpl.java:834) at com.mysql.jdbc.JDBC4Connection.<init>(JDBC4Connection.java:47) at sun.reflect.GeneratedConstructorAccessor4.newInstance(Unknown Source) at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) at java.lang.reflect.Constructor.newInstance(Constructor.java:408) at com.mysql.jdbc.Util.handleNewInstance(Util.java:411) at com.mysql.jdbc.ConnectionImpl.getInstance(ConnectionImpl.java:416) at com.mysql.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:346) at com.mysql.jdbc.jdbc2.optional.MysqlDataSource.getConnection(MysqlDataSource.java:443) at com.mysql.jdbc.jdbc2.optional.MysqlDataSource.getConnection(MysqlDataSource.java:141) at com.mysql.jdbc.jdbc2.optional.MysqlDataSource.getConnection(MysqlDataSource.java:111) at cn.qjj.mysql.MySQLPool.getNewConnection(MySQLPool.java:72) at cn.qjj.mysql.MySQLPool.init(MySQLPool.java:63) at cn.qjj.mysql.MySQLPool.<init>(MySQLPool.java:32) at cn.qjj.mysql.MySQLPool.getInstance(MySQLPool.java:39) at cn.qjj.mysql.SqlUtils.<clinit>(SqlUtils.java:33) at cn.qjj.solr.MsgUtil.main(MsgUtil.java:31) Caused by: com.mysql.jdbc.exceptions.jdbc4.MySQLNonTransientConnectionException: Data source rejected establishment of connection, message from server: "Too many connections" at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62) at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) at java.lang.reflect.Constructor.newInstance(Constructor.java:408) at com.mysql.jdbc.Util.handleNewInstance(Util.java:411) at com.mysql.jdbc.Util.getInstance(Util.java:386) at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:1015) at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:989) at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:975) at com.mysql.jdbc.MysqlIO.doHandshake(MysqlIO.java:1112) at com.mysql.jdbc.ConnectionImpl.coreConnect(ConnectionImpl.java:2483) at com.mysql.jdbc.ConnectionImpl.connectWithRetries(ConnectionImpl.java:2324) ... 18 more java.lang.NullPointerException at java.util.concurrent.ConcurrentHashMap.putVal(ConcurrentHashMap.java:1011) at java.util.concurrent.ConcurrentHashMap.put(ConcurrentHashMap.java:1006) at cn.qjj.mysql.MySQLPool.init(MySQLPool.java:63) at cn.qjj.mysql.MySQLPool.<init>(MySQLPool.java:32) at cn.qjj.mysql.MySQLPool.getInstance(MySQLPool.java:39) at cn.qjj.mysql.SqlUtils.<clinit>(SqlUtils.java:33) at cn.qjj.solr.MsgUtil.main(MsgUtil.java:31)
CannotCreateTransactionException: Could not open JDBC Connection GetConnectionTimeoutException
最近在 开发环境的 1核 2G内存的 云服务器上面 出现了 错误 **GetConnectionTimeoutException **
CannotCreateTransactionException: Could not open JDBC Connection for transaction; nested exception is com.alibaba.druid.pool.GetConnectionTimeoutException: wait millis 30001,
...
刚开始的时候没有这个问题,有时候运行使用的时候 偶尔会出现,但是过了一段时间,这个问题 又会 自动修复,。。。
有点奇怪。使用的 数据源是 druid
初始化大小,最小,最大
initialSize: 5
minIdle: 1
maxActive: 10
以上就是 开始的配置,因为数据库是 另一个云服务器,如果偶尔出现就是 网络的问题。可是本地 运行代码和 Navicat 连接云数据库都没有问题
。。。而且问题经常出现影响到 开发使用。
解决
参考博客
将连接超时时间 设置大一些?
默认连接是设置超时 60S 的,我觉得没必要再设置大了。而且本地连接 远程 的数据库都是 没有问题,连接都是很快的。
不是 连接时间的问题
会不会是 连接数设置太大了?
改为:
initialSize: 1
minIdle: 1
maxActive: 3
结果还是出现了 。。。同样的问题,而且一开机 项目启动访问就出现了,问题更严重了
查询数据库 连接线程情况:
SELECT *
FROM information_schema.processlist
WHERE `user`=''root'' and `HOST` like ''%175.24.232.217%'';
结果发现了 3个连接 都是 Sleep 状态。。。出现了 连接泄露
为什么连接都 sleep ?
估计是 本来连接获取数据库资源就慢,然后浏览器又断开连接了。
或者很多web 请求要请求资料。但是 这些请求又迟迟获取不到数据库连接,因此出现了连接获取超时。
而且因为我这个是 单核服务器,处理本来就慢,不能并发处理。同时 IO耗时最多。因此我分析加多 最大连接数即可
设置 最大连接数为 20
initialSize: 5
minIdle: 1
maxActive: 20
问题解决.
反思为什么 单核服务器要加大最大连接数,而且 多核服务器不用
之前项目放在公司内网多核服务器里面,并没有出现这个问题。
而且我也看过一些资料,连接数不少越大越好的。而且 默认 官方的最大连接数就是 10
参考 设置数据库连接池
即 单机的确实要加多 一些连接数的,而多核的反而减低连接数能够达到更大的性能
几年前一个项目,服务器2核的,设置了100连接数,开始没问题,运行不久就DAO处理非常慢,这就是连接数太多了,加大了上下文切换
com.intellij.util.io.socketConnection.ConnectionStatus的实例源码
private void waitForConnection() throws IOException { addThreadToInterrupt(); try { setStatus(ConnectionStatus.WAITING_FOR_CONNECTION,null); LOG.debug("waiting for connection on port " + getPort()); final Socket socket = myServerSocket.accept(); try { attachToSocket(socket); } finally { socket.close(); } } finally { myServerSocket.close(); removeThreadToInterrupt(); } }
private void waitForConnection() throws IOException { addThreadToInterrupt(); try { setStatus(ConnectionStatus.WAITING_FOR_CONNECTION,null); LOG.debug("waiting for connection on port " + getPort()); final Socket socket = myServerSocket.accept(); try { attachToSocket(socket); } finally { socket.close(); } } finally { myServerSocket.close(); removeThreadToInterrupt(); } }
private void waitForConnection() throws IOException { addThreadToInterrupt(); try { setStatus(ConnectionStatus.WAITING_FOR_CONNECTION,null); LOG.debug("waiting for connection on port " + getPort()); final Socket socket = myServerSocket.accept(); try { attachToSocket(socket); } finally { socket.close(); } } finally { myServerSocket.close(); removeThreadToInterrupt(); } }
public void open() throws IOException { myServerSocket = createSocket(); setPort(myServerSocket.getLocalPort()); ApplicationManager.getApplication().executeOnPooledThread(new Runnable() { public void run() { try { waitForConnection(); } catch (IOException e) { LOG.info(e); setStatus(ConnectionStatus.CONNECTION_Failed,"Connection Failed: " + e.getMessage()); } } }); }
public void open() throws IOException { myServerSocket = createSocket(); setPort(myServerSocket.getLocalPort()); ApplicationManager.getApplication().executeOnPooledThread(new Runnable() { public void run() { try { waitForConnection(); } catch (IOException e) { LOG.info(e); setStatus(ConnectionStatus.CONNECTION_Failed,"Connection Failed: " + e.getMessage()); } } }); }
public void open() throws IOException { myServerSocket = createSocket(); setPort(myServerSocket.getLocalPort()); ApplicationManager.getApplication().executeOnPooledThread(new Runnable() { public void run() { try { waitForConnection(); } catch (IOException e) { LOG.info(e); setStatus(ConnectionStatus.CONNECTION_Failed,"Connection Failed: " + e.getMessage()); } } }); }
今天关于方法'X.set_DbConnection和System.Data.Common.DbConnection'尝试访问方法'Y.get_Settings的讲解已经结束,谢谢您的阅读,如果想了解更多关于.conn.ManagedClientConnectionImpl@604ed9f0 java.net.ConnectException: Connection refused: connect、.MySQLNonTransientConnectionException: Could not create connection to database server. Attempted reconnect 5 times. Giving up.、CannotCreateTransactionException: Could not open JDBC Connection GetConnectionTimeoutException、com.intellij.util.io.socketConnection.ConnectionStatus的实例源码的相关知识,请在本站搜索。
本文标签: