现象:网站上线后,由于开始访问量不是很多,休息天一般都无人访问。发现星期一上班过来,打开网站,报页面找不到的应用错误。
调查原因,原来是DB链接失效,mysql 的数据库有一个全局变量,设定数据库链接有效期限的,默认为8小时。
如果超过这个时间,一直没有访问数据库的话,mysql会自动将其失效。
解决这个问题有两个方法:
1.如下,自动激活DB链接。
设置参考:DB的context.xml文件,添加下面5行属性。
参数设置:参考官网 http://commons.apache.org/dbcp/configuration.html
<?xml version="1.0" encoding="UTF-8"?>
<Context reloadable="true" antiResourceLocking="false">
<Resource name="jdbc/dbname"
auth="Container"
type="javax.sql.DataSource"
driverClassName="org.gjt.mm.mysql.Driver"
url="jdbc:mysql://IP.ADD.RE.SS:3306/dbname?characterEncoding=UTF-8"
username="******"
password="******"
maxActive="500"
maxIdle="30"
maxWait="10000"
validationQuery = "SELECT 1"
testWhileIdle = "true"
timeBetweenEvictionRunsMillis = "3600000"
minEvictableIdleTimeMillis = "18000000"
testOnBorrow = "true"/>
</Context>
2.可以修改mysql DB的全局参数。
将默认原来8小时的时效期限更新为合适的时长。
wait_timeout:
The number of seconds the server waits for activity on an interactive connection before closing it. An interactive client is defined as a client that uses the CLIENT_INTERACTIVE option to mysql_real_connect().
interactive_timeout:
The number of seconds the server waits for activity on a noninteractive connection before closing it. This timeout applies only to TCP/IP and Unix socket file connections, not to connections made using named pipes, or shared memory.
问题:
如果在配置文件my.cnf中只设置参数wait_timeout=100,则重启服务器后进入,
执行: mysql> show variables like “%timeout%”
会发现参数设置并未生效,仍然为28800(即默认的8个小时)。
要同时设置interactive_timeout和wait_timeout才会生效。
set wait_timeout=100
set interactive_timeout=100
重启MySQL Server进入后,查看设置已经生效。
From: http://blog.csdn.net/quickgu/article/details/7179023
相关推荐
12. **配置位置**:在Tomcat中,数据源可以在全局的`server.xml`或每个Web应用的`META-INF/context.xml`文件中配置。 13. **数据库表的创建**:示例中创建了一个名为`hibernate_test`的数据库和一个`customer`表,...
### Tomcat6中配置JNDI方法详解 #### 一、引言 在Java Web开发过程中,连接数据库是一项基础而重要的工作。常见的连接方式包括直接使用JDBC(Java Database Connectivity)以及通过JNDI(Java Naming and Directory...
在Java应用服务器中,Tomcat是一个广泛使用的轻量级服务器,它支持JNDI(Java Naming and Directory Interface)来管理数据源,使得应用程序能够透明地访问数据库资源。JNDI配置数据源是将数据库连接池集成到Tomcat...
然后,为了让Web应用能够访问这个全局数据源,我们需要在每个Web应用的`context.xml`文件(如果没有则创建)中,添加一个`<ResourceLink>`元素,将全局数据源链接到当前Web应用: ```xml <Context> <!-- ... --> ...
总结,配置Tomcat 6.0的数据源(DBCP)和JNDI使用,主要是通过修改服务器和应用的配置文件,然后在代码中利用JNDI查找机制获取数据源,实现数据库连接的高效管理。通过实践和理解这些步骤,可以提升你的Java Web开发...
在Tomcat服务器中,可以通过修改`server.xml`文件中的`Connector`元素来配置服务器的监听端口。对于Tomcat 5.0.30版本来说,默认的HTTP监听端口是8080。如果希望将此端口更改为标准的HTTP端口80,可以在`Connector`...
#### 三、数据源配置在Tomcat的`context.xml`文件或`server.xml`文件中的区别 - **context.xml**:每个Web应用程序都有自己的`context.xml`文件,其中可以包含应用程序特定的资源定义。这种方式适用于单个应用独享...
这通常通过创建一个名为`context.xml`的文件来完成,该文件位于`WEB-INF`目录下。以下是一个基本的`context.xml`配置示例: ```xml <Context> <!-- DBCP数据源配置 --> type="javax.sql.DataSource" maxActive...
在Tomcat 5.5.x版本中,`server.xml`是服务器的主要配置文件,它包含了关于服务器设置、连接器、容器以及其他关键组件的配置信息。本篇文章将详细解释如何在`server.xml`中配置域名转向和连接池。 ### 域名转向...
2. **配置Context**:在Tomcat的`conf/server.xml`文件中,或者在项目的`META-INF/context.xml`中,创建一个`<Resource>`标签来定义数据源。例如: ```xml type="org.apache.commons.dbcp.BasicDataSource" ...
【标题】:“Tomcat配置JNDI数据源” 【描述】:“在Tomcat服务器上配置JNDI数据源,特别是通过DBCP连接池的方式” 【标签】:“tomcat,配置,JNDI数据源” 【内容】:配置JNDI数据源在Java Web应用程序中是一个...
Tomcat 配置文件数据库密码加密,增加factory属性和修改context.xml文件中密码为密文,在lib文件中添加自定义的factory类 代码是jdk1.8版本,包含简单的加密类和http请求,如果使用简单的加密,不需要引用额外的lib...
Tomcat作为流行的Java应用服务器,支持多种数据池实现,如Apache Commons DBCP、C3P0或Tomcat内置的Apache Tomcat JDBC Connection Pool。在这个问题中,开发者遇到了一个常见的错误:“Name jdbc is not bound in ...
ApplicationContext.xml 配置详解 ApplicationContext.xml 是 Spring 框架中用于配置应用程序的核心配置文件。通过该文件,可以定义 Bean、数据源、Session 工厂、 Hibernate 配置等相关信息,从而实现应用程序的...
Tomcat JNDI 配置是 Java Web 应用程序中的一种常见配置,用于将数据库连接信息以 JNDI(Java Naming and Directory Interface)的形式存储在 Tomcat 服务器中,以便于应用程序可以通过 JNDI 来获取数据库连接信息。...
也可以在web工程的webcontent/web-inf目录下建立context.xml文件,这样避免了两次去更改server.xml配置,也可使不同工程使用不同context配置,这是Tomcat6提倡的方法。 六、依赖jar文件 将以下几个jar文件复制到...
在Java应用服务器中,如Tomcat 6.0,配置JNDI(Java Naming and Directory Interface)的DBCP(Database Connection Pool)连接池是管理数据库连接的重要步骤。JNDI是一个标准接口,允许应用程序查找和访问命名服务...
### Struts框架中struts-config.xml文件配置详解 #### 一、引言 在Java Web开发领域,Struts是一个非常重要的MVC(Model-View-Controller)框架,它极大地简化了Web应用程序的开发过程。而在Struts框架中,`struts...
Tomcat 5.5中的DBCP配置涉及到添加依赖库、创建数据源配置文件、配置Tomcat服务器和在应用程序中使用JNDI查找数据源。通过这些步骤,可以实现高效且可扩展的数据库连接管理,为Web应用提供稳定的数据库访问支持。在...
在Java Web开发中,`struts.xml`, `applicationContext.xml` 和 `web.xml` 是三个至关重要的配置文件,它们各自负责不同的职责,并协同工作来构建一个完整的应用框架。以下是关于这三个配置文件的详细说明。 首先,...