共计 3985 个字符,预计需要花费 10 分钟才能阅读完成。
系统环境及相关安装包:
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,都要在数据库中赋权限的。
Tomcat 的详细介绍 :请点这里
Tomcat 的下载地址 :请点这里
相关阅读:
Linux 下 Apache 与多个 Tomcat 集群负载均衡 http://www.linuxidc.com/Linux/2012-01/51731.htm
Nginx Tomcat 集群负载均衡解决笔记 http://www.linuxidc.com/Linux/2013-07/86827.htm
实例详解 Tomcat 组件安装 +Nginx 反向代理 Tomcat+Apache 使用 mod_jk 和 mod_proxy 反向代理和负载均衡 http://www.linuxidc.com/Linux/2013-06/85290.htm
Apache+Tomcat 环境搭建(JK 部署过程)http://www.linuxidc.com/Linux/2012-11/74474.htm
深入剖析 Tomcat PDF http://www.linuxidc.com/Linux/2013-11/92595.htm
更多 CentOS 相关信息见 CentOS 专题页面 http://www.linuxidc.com/topicnews.aspx?tid=14