2013-01-15 88 views
1

我運行nhibernate對.net框架,在測試期間我收到此錯誤 錯誤91 0 0 0發生異常:無法打開連接 NHibernate.ADOException:無法打開連接---> NHibernate.ADOException:無法創建驅動程序---> MySql.Data.My qlClient.MySqlException連接:#08004Too許多連接mysql與nhibernate太多連接

in MySql.Data.MySqlClient.PacketReader.CheckForError() 
in MySql.Data.MySqlClient.PacketReader.ReadHeader() 
in MySql.Data.MySqlClient.PacketReader.OpenPacket() 
in MySql.Data.MySqlClient.NativeDriver.Authenticate411() 
in MySql.Data.MySqlClient.NativeDriver.Authenticate() 
in MySql.Data.MySqlClient.NativeDriver.Open() 
in MySql.Data.MySqlClient.Driver.Create(MySqlConnectionString settings) 
in MySql.Data.MySqlClient.MySqlPool.CreateNewPooledConnection() 
in MySql.Data.MySqlClient.MySqlPool.GetPooledConnection() 
in MySql.Data.MySqlClient.MySqlPool.GetConnection() 
in MySql.Data.MySqlClient.MySqlPoolManager.GetConnection(MySqlConnectionString settings) 
in MySql.Data.MySqlClient.MySqlConnection.Open() 
in NHibernate.Connection.DriverConnectionProvider.GetConnection() 
--- Fine dell'analisi dello stack dell'eccezione interna --- 
in NHibernate.Connection.DriverConnectionProvider.GetConnection() 
in NHibernate.Impl.SessionFactoryImpl.OpenConnection() 
--- Fine dell'analisi dello stack dell'eccezione interna --- 
in NHibernate.Impl.SessionFactoryImpl.OpenConnection() 
in NHibernate.Impl.SessionImpl.Connect() 
in NHibernate.Impl.SessionImpl.get_Connection() 
in NHibernate.Transaction.AdoTransaction.Begin(IsolationLevel isolationLevel) 
in NHibernate.Transaction.TransactionFactory.BeginTransaction(ISessionImplementor session, IsolationLevel isolationLevel) 
in NHibernate.Transaction.TransactionFactory.BeginTransaction(ISessionImplementor session) 
in NHibernate.Impl.SessionImpl.BeginTransaction() 
in interact.VideoSystem.Checks.CheckAviXml() in 
C:\var\projects\videosystem\3.0\VideoServiceSvc\Checks.vb:riga 348 
ERROR 91 0 0 0 An exception occurred: cannot open connection 
NHibernate.ADOException: cannot open connection ---> NHibernate.ADOException: Could not   create connection from Driver ---> MySql.Data.MyqlClient.MySqlException: #08004Too many connections 

in MySql.Data.MySqlClient.PacketReader.CheckForError() 
in MySql.Data.MySqlClient.PacketReader.ReadHeader() 
in MySql.Data.MySqlClient.PacketReader.OpenPacket() 
in MySql.Data.MySqlClient.NativeDriver.Authenticate411() 
in MySql.Data.MySqlClient.NativeDriver.Authenticate().......... 

我不知道如何解決它! 有人可以幫助我嗎? 在此先感謝

+0

請顯示您用於打開會話的代碼 –

+0

您在哪裏處理會話? –

+0

你有沒有想過這個問題? – Rippo

回答

0

MySQL有一個配置設置,將確定可以創建多少連接到服務器。很可能你跑過這個數字。

有關如何解決此問題的更多詳細信息,請參閱以下鏈接:https://dev.mysql.com/doc/refman/5.5/en/too-many-connections.html

如果您正在測試並收到此錯誤,您可能會遇到連接未關閉的問題。所以我建議你在MySQL管理員或命令行中測試MySQL連接以確定連接是否被關閉。聽起來你正在泄漏連接。

快樂狩獵!