红联Linux门户
Linux帮助

CentOS 6.5 64位系统下Tomcat+MySQL(rpm)布署jsp环境

发布时间:2015-04-11 15:10:25来源:51cto作者:zhangjx8372

系统环境及相关安装包:
CentOS6.5 64位系统
tomcat6      :apache-tomcat-6.0.39.tar.gz
mysql5.1.17  :rpm包
jdk1.6      :jdk-6u29-linux-x64.bin
jdbc        :mysql-connector-java-3.1.13-bin.jar


1、安装mysql,rpm安装,最好是配置好YUM源,直接yum -y install mysql mysql-server
lsof -i:3306  查看数据库是否启动。
库中的操作:
创建库:show databases;
create database news;
为连接库的用户赋权:grant all privileges on *.*  to root@localhost by identified "123456";
#localhosts可换为127.0.0.1为本地访问用户 或是‘%’为远程访问用户 ;
刷新生效:flush privileges;


2、配置java环境:jdk1.6

首先卸载系统原有的JDK;
查看版本:        java -version
过滤已安装的版本:rpm -qa | grep gcj
rpm -qa | grep jdk
卸载:rpm -e jdk
重装JDK1.6:chmod u+x jdk-6u29-linux-x64.bin
./jdk-6u29-linux-x64.bin
解压之后将对应的jdk目录中的文件全部拷贝到/usr/java/目录下;
将java环境变量写入到/etc/profile文件中,可随系统生效;
export JAVA_HOME=/usr/java                                          >>/etc/profile
export PATH=$PATH:$JAVA_HOME/bin                                    >>/etc/profile
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:JAVA_HOME/lib/tools.jar    >>/etc/profile
export JRE=/usr/java/jre                                            >>/etc/profile
立即生效环境变量:  source /etc/profile
此时再查看:  java  -version
最好是重启一下系统,再查看JDK版本。


3、配置tomcat
将tomcat的源文件 apache-tomcat-6.0.39.tar.gz解压缩到对应的目录,并重新命名;
tar zxvf apache-tomcat-6.0.39.tar.gz -C /usr/local/
cd /usr/local/
mv apache-tomcat-6.0.39 tomcat
配置相关文件:
cd /usr/local/tomcat/conf
Catalina            context.xml        tomcat-users.xml
catalina.policy      logging.properties  web.xml
catalina.properties  server.xml
需要修改连接相关的文件context.xml,其他文件可使用默认的配置即可;
在context.xml文件的</context>之前插入以下修改的内容:
<Resource name="datasource" auth="Container"
type="javax.sql.DataSource"
url="jdbc:mysql://192.168.2.52:3306/mobilenews"
/>

#type连接类型;driverClassName连接库的驱动jdbc;url要连接的库,此处我的工程所使用的库名为mobilenews;
接着将工程放到对应的目录/usr/local/tomcat/webapps/


4、此处比较重要的一步,JDBC连接驱动的安装:
需要将和数据库相匹配的JDBC驱动程序拷贝到相应的库里;
/usr/local/tomcat/lib/
/usr/local/tomcat/webapps/News/..../lib/    工程中的库;
接下来可以启动tomcat程序:
/usr/local/tomcat/bin/startup.sh
查看监听状态:lsof -i:8080

再使用IE浏览器访问自己的工程项目;
同时查看库的监听状态,如果变为下面这样,那么整个jsp环境就配置成功了
lsof -i:3306
COMMAND  PID  USER  FD  TYPE DEVICE SIZE/OFF NODE NAME
mysqld  20232 mysql  10u  IPv4  73197      0t0  TCP *:mysql (LISTEN)
mysqld  20232 mysql  29u  IPv4  73368      0t0  TCP localhost:mysql->localhost:57730 (ESTABLISHED)
mysqld  20232 mysql  30u  IPv4  73479      0t0  TCP localhost:mysql->localhost:57731 (ESTABLISHED)
mysqld  20232 mysql  31u  IPv4  73628      0t0  TCP 192.168.2.51:mysql->192.168.2.20:52728 (ESTABLISHED)
mysqld  20232 mysql  32u  IPv4  73633      0t0  TCP 192.168.2.51:mysql->192.168.2.20:52729 (ESTABLISHED)
mysqld  20232 mysql  33u  IPv4  73636      0t0  TCP 192.168.2.51:mysql->192.168.2.20:52730 (ESTABLISHED)
mysqld  20232 mysql  34u  IPv4  73682      0t0  TCP 192.168.2.51:mysql->192.168.2.20:52748 (ESTABLISHED)
mysqld  20232 mysql  35u  IPv4  73740      0t0  TCP 192.168.2.51:mysql->192.168.2.20:52760 (ESTABLISHED)
mysqld  20232 mysql  38u  IPv4  73789      0t0  TCP 192.168.2.51:mysql->192.168.2.253:4895 (ESTABLISHED)
mysqld  20232 mysql  39u  IPv4  73792      0t0  TCP 192.168.2.51:mysql->192.168.2.253:4897 (ESTABLISHED)
java    20295  root  150u  IPv6  73367      0t0  TCP localhost:57730->localhost:mysql (ESTABLISHED)
java    20295  root  163u  IPv6  73478      0t0  TCP localhost:57731->localhost:mysql (ESTABLISHED)


错误排查思路:

如果出现500错误,按提示的内容来分析:
一般错误排查步骤:

后端数据库是否启动起来了,context.xml文件中配置的库名,用户名和密码是否和工程中所使用的一致!
并确认用户是否已在数据库中赋过相应的权限。JDBC连接文件是否和数据库版本相匹配;本人是找了很多相关的错误处理文档,但是大多数说得很不清晰,而且多数是抄来抄去的,很感叹国内的开源事业。


补充:

配置文件context.xml中用户名和密码

<Resource name="datasource" auth="Container"
type="javax.sql.DataSource"
maxActive="80" maxIdle="20" maxWait="-1"
username="abc" password="abc2013"
driverClassName="com.mysql.jdbc.Driver"
url="jdbc:mysql://192.168.2.51:3306/mobilenews"
/>
此处,我使用的连接库用户为abc,密码为abc2013,都要在数据库中赋权限的。