當前位置:首頁 » 存儲配置 » 如何配置資料庫連接池

如何配置資料庫連接池

發布時間: 2022-01-15 10:02:39

A. Mysql資料庫連接池如何配置

連接先建立一些連接,並且這些連接允許共享,因此這樣就節省了每次連接的時間開銷。Mysql資料庫為例,連接池在Tomcat中的配置與使用。
1、創建資料庫Student,表student
2、配置server.xml文件。Tomcat安裝目錄下conf中server.xml文件。
<GlobalNamingResources>
<Resource
name="jdbc/DBPool"
type="javax.sql.DataSource"
password=""
driverClassName="com.mysql.jdbc.Driver"
maxIdle="2"
maxWait="5000"
username="root"
url="jdbc:mysql://localhost:3306/student"
maxActive="3"
/>
</GlobalNamingResources>
name:指定連接池的名稱
type:指定連接池的類,他負責連接池的事務處理
url:指定要連接的資料庫
driverClassName:指定連接資料庫使用的驅動程序
username:資料庫用戶名
password:資料庫密碼
maxWait:指定最大建立連接等待時間,如果超過此時間將接到異常
maxIdle:指定連接池中連接的最大空閑數
maxActive:指定連接池最大連接數
3、配置web.xml文件。
<web-app>
<resource-ref>
<description>mysql資料庫連接池配置</description>
<res-ref-name>jdbc/DBPool</res-ref-name>
<res-type>javax.sql.DataSource</res-type>
<res-auth>Container</res-auth>
<res-sharing-scope>Shareable</res-sharing-scope>
</resource-ref>
</web-app>
4、配置context.xml文件
與server.xml文件所在的位置相同。
<Context>
<ResourceLink
name="jdbc/DBPool"
type="javax.sql.DataSource"
global="jdbc/DBPool"
/>
</Context>
5、測試
DataSource pool = null;
Context env = null;
Connection conn = null;
Statement st = null;
ResultSet rs = null;
try{
env = (Context)new InitialContext().lookup("java:comp/env");
//檢索指定的對象,返回此上下文的一個新實例
pool = (DataSource)env.lookup("jdbc/DBPool");
//獲得資料庫連接池
if(pool==null){out.printl("找不到指定的連接池!");}
con = pool.getConnection();
st = con.createStatement();
rs = st.executeQuery("select * from student");
}catch(Exception ex){out.printl(ne.toString());}

B. 在Web.config里怎麼配置資料庫連接池

--在WEB.config配置下面的節點,connectionstring寫的是連接資料庫的字元串datasource是填寫的資料庫,initialcatalog是連接的資料庫名稱,user id是連接數據的賬戶名,password是賬戶的密碼
<connectionStrings>
<add name="connstring" connectionString="Data Source=.\HH;Initial Catalog=stu;User ID=sa;Password=123;"/>
</connectionStrings>
--在web應用層獲取這段資料庫連接字元串的語句是
ConfigurationManager.ConnectionStrings["connstring"].ToString()

C. 如何配置資料庫連接池的線程數

顯著影響到整個應用程序的伸縮性和健壯性,影響到程序的性能指標,資料庫連接池正是針對這個問題提出的.
資料庫連接池負責分配,管理和釋放資料庫連接,它允許應用程序重復使用一個現有的資料庫連接,而不是再重新建立一個;釋放空閑時間超過最大空閑時間的資料庫連接來避免因為沒有釋放資料庫連接而引起的資料庫連接遺漏,這樣可以明顯提高對資料庫操作的性能.
資料庫連接池在初始化的時將創建一定數量的資料庫連接放到連接池中,這些資料庫連接的數量是又最小資料庫連接數來設定的,無論這些資料庫連接是否被使用,連接池都將一直保證至少

D. 如何配置mysql資料庫連接池

使用org.springframework.jdbc.datasource.DriverManagerDataSource
說明:DriverManagerDataSource建立連接是只要有連接就新建一個connection,根本沒有連接池的作用。
<bean id="dataSource" class="org.springframework.jdbc.datasource.DriverManagerDataSource">
<property name="driverClassName"><value>${jdbc.driverClassName}</value></property>
<property name="url"><value>${jdbc.url}</value></property>
<property name="username"><value>${jdbc.username}</value></property>
<property name="password"><value>${jdbc.password}</value></property>

</bean>

E. java中建立資料庫連接池,有哪幾個步驟

Context context=new InitialContext();
DataSource ds=(DataSource)context.lookup("java:comp/env/jdbc/"+projectName);這里的projectName指的是你的項目名稱然後在tomcatde 的\conf\Catalina\localhost目錄下配置一個和你項目名稱相同的xml文件文件的配置方法可以去網路下很多的,這樣就可以使用連接池了。

F. 如何配置Tomcat資料庫連接池

查看Tomcat訪問日誌及錯誤日誌,容易發現經絕大部分屬於內存溢出、Tomcat進程數滿等性能問題。
加大tomcat內存配置能夠很好的解決溢出問題。
命令行啟動方式的內存配置
修改bin目錄下catalina.bat文件的第97行以下:rem --------------------------------------------------------------在該行下面加入以下內容:set JAVA_OPTS=-server -Xms800m -Xmx800m -XX:PermSize=64M -XX:MaxNewSize=256m -XX:MaxPermSize=128m -Djava.awt.headless=trueset JAVA_OPTS=-server -Xms768m -Xmx768m -XX:PermSize=128m -XX:MaxPermSize=256m -XX:NewSize=192m -XX:MaxNewSize=384mset CATALINA_OPTS=-server -Xms768m -Xmx768m -XX:PermSize=128m -XX:MaxPermSize=256m -XX:NewSize=192m -XX:MaxNewSize=384m

安裝tomcat服務時,進行配置

檢測是否配置成功tomcat內存

<%@ page contentType="text/html; charset=GBK"%><% out.println("總 內 存: " + java.lang.Runtime.getRuntime().totalMemory() / 1024 / 1024 + "MB");
out.println("<br>");
out.println("可用內存: " + java.lang.Runtime.getRuntime().freeMemory() / 1024 / 1024 + "MB");%>

G. 怎麼在tomcat配置資料庫連接池

方法/步驟

Tomcat大都是免安裝綠色版的,找到Tomcat的解壓路徑,然後找打一下文件:tomcat\conf\context.xml。

打開文件context.xml。
將右側滾動條拉到最下方,並添加如下圖紅色框內的代碼。
也可復制如下代碼:
<Resource driverClassName="oracle.jdbc.driver.OracleDriver"
maxActive="30" maxIdle="3" maxWait="5000" name="jdbc/test" username="test" password="test"
type="javax.sql.DataSource" url="jdbc:oracle:thin:@127.0.0.1:1521:orcl"/>

那上邊的代碼有什麼作用呢?下邊來給大家解釋比較常用的幾個參數。
driverClassName:驅動的名稱。
該參數為資料庫驅動類名稱,比如上邊使用的是oracle的驅動。當然也意為著只能連接Oracle的資料庫。如果想用MySQL的,那就寫下邊這個嘍。
MySQL的驅動為:com.mysql.jdbc.Driver

name/password:為資料庫的用戶名和密碼。

H. ssm框架中怎麼配置資料庫連接池

Druid配置
1.下載jar包:http://repo1.maven.org/maven2/com/alibaba/druid/
2.編寫資料庫連接的資源文件:dbconfig.properties
url:jdbc:mysql://localhost:3306/flm?useUnicode=true&characterEncoding=utf8
driverClassName:com.mysql.jdbc.Driver
username:root
password:root

#------------------------------------------------------------------------------------------
#配置擴展插件 監控統計用filters:stat 日誌用filters:log4j 防禦sql注入用filters:wall
filters:stat

#最大連接池數量 初始化建立物理連接的個數 獲取連接時最長的等待時間 最小連接池數量 maxIdle已經棄用
maxActive:20
initialSize:1
maxWait:60000
minIdle:10
maxIdle:15

#有兩個含義 1.Destroy 線程會檢測連接的時間 2.testWhileIdle的判斷依據
timeBetweenEvictionRunsMillis:60000

#Destory線程中如果檢測到當前連接的最後活躍時間和當前時間的差值大於minEvictableIdleTimeMillis,則關閉當前連接
minEvictableIdleTimeMillis:300000

#用來檢測連接是否的sql,要求是一個查詢語句。在mysql中通常設置為SELECT 'X'
validationQuery:SELECT 'x'

#申請連接的時候檢測,如果空閑時間大於timeBetweenEvictionRunsMillis,執行validationQuery連接是否有效
testWhileIdle:true

#申請連接時執行validationQuery檢測連接是否有效 這個配置會降低性能
testOnBorrow:false

#歸還連接時執行validationQuery檢測連接是否有效 這個配置會降低性能
testOnReturn:false

#要啟用PSCache,必須配置大於0,當大於0時,poolPreparedStatements自動觸發修改為true
maxOpenPreparedStatements:20

#對於建立連接超過removeAbandonedTimeout的連接強制關閉
removeAbandoned:true

#指定連接建立多長就被強制關閉
removeAbandonedTimeout:1800

#指定發生removeabandoned時,是否記錄當前線程的堆棧信息到日誌中
logAbandoned:true
04142434445460414243444546

3.在Spring配置文件ApplicationContext.xml中載入資源文件進來
<!--PropertyPlaceholderConfigurer是個bean工廠後置處理器的實現,也就是 BeanFactoryPostProcessor介面的一個實現。PropertyPlaceholderConfigurer可以將上下文(配置文 件)中的屬性值放在另一個單獨的標准java Properties文件中去。-->
<bean id="propertyConfigurer" class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
<property name="locations">
<list>
<value>/WEB-INF/classes/dbconfig.properties</value> <!--dbconfig.properties 資料庫連接信息-->
</list>
</property>
</bean> 1234567812345678

4.在Spring配置文件ApplicationContext.xml中配置阿里數據連接池Druid

<!-- 阿里 druid資料庫連接池 -->
<bean id="dataSource" class="com.alibaba.druid.pool.DruidDataSource" destroy-method="close">
<!-- 資料庫基本信息配置 -->
<property name="url" value="${url}" />
<property name="username" value="${username}" />
<property name="password" value="${password}" />
<property name="driverClassName" value="${driverClassName}" />
<property name="filters" value="${filters}" />
<!-- 最大並發連接數 -->
<property name="maxActive" value="${maxActive}" />
<!-- 初始化連接數量 -->
<property name="initialSize" value="${initialSize}" />
<!-- 配置獲取連接等待超時的時間 -->
<property name="maxWait" value="${maxWait}" />
<!-- 最小空閑連接數 -->
<property name="minIdle" value="${minIdle}" />
<!-- 配置間隔多久才進行一次檢測,檢測需要關閉的空閑連接,單位是毫秒 -->
<property name="timeBetweenEvictionRunsMillis" value="${timeBetweenEvictionRunsMillis}" />
<!-- 配置一個連接在池中最小生存的時間,單位是毫秒 -->
<property name="minEvictableIdleTimeMillis" value="${minEvictableIdleTimeMillis}" />
<property name="validationQuery" value="${validationQuery}" />
<property name="testWhileIdle" value="${testWhileIdle}" />
<property name="testOnBorrow" value="${testOnBorrow}" />
<property name="testOnReturn" value="${testOnReturn}" />
<property name="maxOpenPreparedStatements" value="${maxOpenPreparedStatements}" />
<!-- 打開removeAbandoned功能 -->
<property name="removeAbandoned" value="${removeAbandoned}" />
<!-- 1800秒,也就是30分鍾 -->
<property name="removeAbandonedTimeout" value="${removeAbandonedTimeout}" />
<!-- 關閉abanded連接時輸出錯誤日誌 -->
<property name="logAbandoned" value="${logAbandoned}" />
</bean>

I. 怎樣配置Tomcat6.0的資料庫連接池詳解

此文只針對Tomcat6.0進行配置。
1.在自己的項目下的META-INF(注意:不是WEB-INF,我看網上很多人都弄錯了)下面新建一個context.xml文件,文件內容為:

<?xml version="1.0" encoding="UTF-8"?>
<Context>
<WatchedResource>WEB-INF/web.xml</WatchedResource> //監聽資源
<Resource
name="myoracle" //給資源隨便起一個名字,用於在程序中調用。
auth="Container" //
type="javax.sql.DataSource" //資源類型
driverClassName="oracle.jdbc.OracleDriver" //載入驅動,每種資料庫的方式不同,自己參考資料。
url="jdbc:oracle:thin:@localhost:1521:ICSS" //連接字元串,相信大家不陌生。
username="jsp" //訪問資料庫用戶名
password="jsp" //訪問資料庫的密碼
maxActive="200" //最大可以有200名用戶連接數據源
maxIdle="10" //如果沒有用戶連接,空出10個連接等待用戶連接
maxWait="5000"/> //如果已連接用戶5000秒內沒有再次連接數據源,則放棄此連接
</Context>

2.如果不是用的myeclipse自帶的tomcat,則要到那個tomcat下面conf\Catalina\localhost刪除host-manager.xml和manager.xml。
3.然後就在servlet裡面調用了,調用方法:
需要用到的引用:

import javax.sql.DataSource;
import javax.naming.InitialContext;
import java.sql.Connection;
InitialContext initCtx = new InitialContext(); //
//下面的」 java:comp/env」是固定的,」myoracle」是在context.xml中指定的name。
DataSource ds = (DataSource)initCtx.lookup("java:comp/env/myoracle");
Connection conn = ds.getConnection(); //獲取連接。

附加:

1.Sql server 的context.xml配置:

<Resource
name="名字"
type="javax.sql.DataSource"
maxActive="100"
maxIdle="30"
maxWait="5000"
username="用戶名"
password="密碼"
driverClassName="com.microsoft.jdbc.sqlserver.SQLServerDriver"
url="jdbc:microsoft:sqlserver://127.0.0.1:1433;DatabaseName=資料庫名"
/>

熱點內容
訪問攔截怎麼解除安卓 發布:2024-09-20 17:28:48 瀏覽:273
蘿卜干存儲 發布:2024-09-20 17:21:37 瀏覽:714
蘋果手機如何遷移軟體到安卓手機 發布:2024-09-20 17:21:34 瀏覽:691
查看伺服器ip限制 發布:2024-09-20 16:56:27 瀏覽:388
p搜系統只緩存1頁為什麼 發布:2024-09-20 16:48:51 瀏覽:838
上網的賬號和密碼是什麼東西 發布:2024-09-20 16:31:31 瀏覽:612
安卓手機王者榮耀如何調超高視距 發布:2024-09-20 16:31:30 瀏覽:428
安卓G是什麼app 發布:2024-09-20 16:23:09 瀏覽:81
iphone怎麼壓縮文件 發布:2024-09-20 16:08:18 瀏覽:356
linux查看用戶名密碼是什麼 發布:2024-09-20 16:03:20 瀏覽:744