1. 程式人生 > >Mysql連接字符串

Mysql連接字符串

提示 線程數 取出 自動 至少 pos AD 數據庫連接 新建

<connectionStrings>
<add name="MySqlConn" connectionString="Database=Demo;Data Source=192.168.100.114;User Id=mt4demo;Password=00000000;CharSet=utf8;port=3306;pooling=true;Min Pool Size=5; Max Pool Size=30; Connect Timeout=300; default command timeout=300;Connection reset=true" providerName="MySql.Data.MySqlClient" />
</connectionStrings>

Pooling: 是否使用線程池,默認 true
MinimumPoolSize, min pool size:線程池中允許的最少線程數,默認 0
MaximumPoolSize,max pool size:線程池中允許的最多線程數,默認 100
ConnectionReset:連接過期後是否自動復位,默認 false

當第一個連接請求到來時創建連接池;連接池的建立由數據庫連接的連接字符創來決定。每一個連接池都與一個不同的連接字符串相關。
當一個新的連接請求到來時如果連接字符串和連接池使用的字符串相同,就從連接池取出一個連接;如果不相同,就新建一個連接池。

當連接池中的所有連接都已經關閉時關閉連接池。

當連接池已經達到它的最大連接數目時,有新的連接請求到來時,新的連接請求將放置到連接隊列中。當有連接釋放給連接池時,連接池將新釋放的連接分配給在隊列中排隊的連接請求。你可以調用close和dispose將連接歸還給連接池。

對於.NET應用程序而言,默認為允許連接池。(這意味著你可以不必為這件事情做任何的事情)當然,如果你可以在SQLConnection對象的連接字符串中加進Pooling=true;確保你的應用程序允許連接池的使用。

技巧和提示

1. 當你需要數據庫連接時才去創建連接池,而不是提前建立。一旦你使用完連接立即關閉它,不要等到垃圾收集器來處理它。
2. 在關閉數據庫連接前確保關閉了所有用戶定義的事務。
3. 不要關閉數據庫中所有的連接,至少保證連接池中有一個連接可用。如果內存和其他資源是你必須首先考慮的問題,可以關閉所有的連接,然後在下一個請求到來時創建連接池。

Mysql連接字符串