您的位置:首页 > 运维架构 > Tomcat

在linux上安装配置java(jdk,mysql,tomcat)的WEB运行环境的详细教程

2008-10-26 10:36 1216 查看

关键字: linux的java运行环境 配置mysql jdk tomcat

要让WEB应用也就是网站能运行起来,首要的任务就是安装运行环境和进行相应的配置。

本篇将详细的讲述下如何在linux(redhat或者其他unix)上搭建和配置java的WEB运行环境。


--------------------------------------------------------
第1步,准备需要的安装软件
--------------------------------------------------------
(1)JDK : j2sdk-1_4_2_09-linux-i586.bin  ; 34.7 MB (36,429,599 字节)
(2)WEB : jakarta-tomcat-4.1.31.tar.gz   ; 7.68 MB (8,058,534 字节)
(3)DB  : mysql-standard-4.1.15-pc-linux-gnu-i686-glibc23.tar.gz ; 24.1 MB (25,276,587 字节)
(4)jar : mysql-connector-java-3.1.11-bin.jar ;430 KB (440,483 字节)

其中第(4)个是mysql的jar包,安装好mysql后请将其复制到mysql目录下。
另外关于mysql,请尽量不要使用4.1.15之前的版本,因为之前的是不支持utf-8编码的。
有的linux如redhat版本在系统安装的时候会默认装一个mysql,请先用rpm命令卸载掉。


环境比较老,请大家见谅.用惯了这一套,比较稳定,至今还没更换过.

--------------------------------------------------------
第2步, 软件FTP上传到linux服务器
--------------------------------------------------------
将上面的安装软件用ftp上传到linux上的某个目录中,比如暂时放到 /home 目录下。


--------------------------------------------------------
第3步,安装 JDK (j2sdk-1_4_2_09-linux-i586.bin)
--------------------------------------------------------
3.1 修改安装包文件为可执行
引用 chmod a+x j2sdk-1_4_2_09-linux-i586.bin

3.2 开始安装
引用 ./j2sdk-1_4_2_09-linux-i586.bin

3.3 移动到指定的安装运行目录位置
引用 mv j2sdk1.4.2_09 /usr/local/jdk1.4.2

备注:如果你使用像jfreechat之类生成报表图片的功能,报表图片中如果有中文的,那么还要做以下设置。

将 /usr/local/jdk1.4.2/jre/lib/font.properties.zh_CN.Redhat 改名为font.properties ,
原font.properties请先改名为font.properties.old留作备份。


--------------------------------------------------------
第4步,安装 mysql (mysql-standard-4.1.15-pc-linux-gnu-i686-glibc23.tar.gz)
--------------------------------------------------------
4.1 解压文件
引用 tar xvzf mysql-standard-4.1.15-pc-linux-gnu-i686-glibc23.tar.gz

4.2 配置、安装、移动
引用 cd mysql-standard-4.1.15-pc-linux-gnu-i686-glibc23
./configure --prefix=/usr/local/mysql
mv mysql-standard-4.1.15-pc-linux-gnu-i686-glibc23 /usr/local/mysql

mysql 默认安装目录是 /usr/local/mysql,如果你不想安装到这个目录则必须修改mysql的文件(bin/mysqld_safe),将所有的'/usr/local/mysql'替换成你想要的目录.

4.3 设置mysql用户组(group)和用户(user)
引用 groupadd mysql;useradd -g mysql mysql;cd /usr/local;chown -R mysql mysql;chgrp -R mysql mysql

4.4 启动mysql
引用 /usr/local/mysql/bin/mysqld_safe -u mysql &

4.5 停止mysql
引用 /usr/local/mysql/bin/mysqladmin shutdown -u root



--------------------------------------------------------
第5步,安装 tomcat (jakarta-tomcat-4.1.31.tar.gz)
--------------------------------------------------------
5.1 解压文件
引用 tar zxvf jakarta-tomcat-4.1.31.tar.gz

5.2 移动到指定的运行位置目录
引用 mv jakarta-tomcat-4.1.31 /usr/local/tomcat4.1.31

5.3 将 mysql-connector-java-3.1.11-bin.jar  复制到 /usr/local/tomcat4.1.31/common/lib

5.4 修改jvm内存数量

vi /usr/local/tomcat4.1.31/bin/catalina.sh 加入配置 JAVA_OPTS='-Xms128m -Xmx512m'
具体位置可以放在下面的地方:

引用 #   JPDA_ADDRESS    (Optional) Java runtime options used when the "jpda start"
#                   command is executed. The default is 8000.
#
#   JSSE_HOME       (Optional) May point at your Java Secure Sockets Extension
#                   (JSSE) installation, whose JAR files will be added to the
#                   system class path used to start Tomcat.
#
#   CATALINA_PID    (Optional) Path of the file which should contains the pid
#                   of catalina startup java process, when start (fork) is used
#
# $Id: catalina.sh,v 1.37 2004/08/15 15:20:15 markt Exp $
# -----------------------------------------------------------------------------

JAVA_OPTS='-Xms128m -Xmx512m'

# OS specific support.  $var _must_ be set to either true or false.
cygwin=false
os400=false



备注:
在unix/linux平台下,jdk不能使用AWT的lib库进行图片生成显示,因此必须进行如下配置:
(1) 此项配置对jdk版本有要求,必须使用jdk1.4.2或者更高版本,jdk1.4.1不能使用(已经测试过).
(2) 修改tomcat配置文件 vi /usr/local/tomcat4.1.31/bin/catalina.sh
在文件中如下位置中加上字符串 "-Djava.awt.headless=true \"

引用 elif [ "$1" = "start" ] ; then

  shift
  touch "$CATALINA_BASE"/logs/catalina.out
  if [ "$1" = "-security" ] ; then
    echo "Using Security Manager"
    shift
    "$_RUNJAVA" $JAVA_OPTS $CATALINA_OPTS \
      -Djava.endorsed.dirs="$JAVA_ENDORSED_DIRS" -classpath "$CLASSPATH" \
      -Djava.security.manager \
      -Djava.security.policy=="$CATALINA_BASE"/conf/catalina.policy \
      -Dcatalina.base="$CATALINA_BASE" \
      -Dcatalina.home="$CATALINA_HOME" \
      -Djava.io.tmpdir="$CATALINA_TMPDIR" \
      -Djava.awt.headless=true \
      org.apache.catalina.startup.Bootstrap "$@" start \
      >> "$CATALINA_BASE"/logs/catalina.out 2>&1 &

      if [ ! -z "$CATALINA_PID" ]; then
        echo $! > $CATALINA_PID
      fi
  else
    "$_RUNJAVA" $JAVA_OPTS $CATALINA_OPTS \
      -Djava.endorsed.dirs="$JAVA_ENDORSED_DIRS" -classpath "$CLASSPATH" \
      -Dcatalina.base="$CATALINA_BASE" \
      -Dcatalina.home="$CATALINA_HOME" \
      -Djava.io.tmpdir="$CATALINA_TMPDIR" \
      -Djava.awt.headless=true \
      org.apache.catalina.startup.Bootstrap "$@" start \
      >> "$CATALINA_BASE"/logs/catalina.out 2>&1 &

      if [ ! -z "$CATALINA_PID" ]; then
        echo $! > $CATALINA_PID


到此,软件已经全部安装完毕,接下来就要做些配置.

1. mysql需要一个配置文件 my.cnf (文件在我附件中的zip包有),必须把这个文件放到linux服务器的 /etc目录下.

里面主要是设置数据库采用utf-8编码,当然也是用这个配置文件来调节mysql的各种运行参数.
引用 [client]
#password = your_password
default-character-set=utf8
port = 3306
socket = /tmp/mysql.sock

# Here follows entries for some specific programs

# The MySQL server
[mysqld]
default-character-set=utf8
default-collation=utf8_general_ci
port = 3306
socket = /tmp/mysql.sock

2. mysql的root用户初始化口令和添加一个普通用户
执行命令
引用 /usr/local/mysql/bin/mysqld_safe -u mysql &
/usr/local/mysql/bin/mysql -uroot -p
use mysql
## set root password
引用 update user set password=password('12345678') where user='root';
flush privileges;

##create a database:testdb
引用 CREATE DATABASE testdb DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;

## create a test user for testdb database: username=testuser,password=testuser123
引用 delete from user where user='testuser';
INSERT INTO user (Host, User, password, Select_priv, Insert_priv, Update_priv, Delete_priv, Create_priv, Drop_priv, Reload_priv, Shutdown_priv, Process_priv, File_priv, Grant_priv, References_priv, Index_priv, Alter_priv, Show_db_priv, Super_priv, Create_tmp_table_priv, Lock_tables_priv, Execute_priv, Repl_slave_priv, Repl_client_priv, ssl_type, ssl_cipher, x509_issuer, x509_subject, max_questions, max_updates, max_connections) VALUES ('%', 'testuser', '', 'N', 'N', 'N', 'N', 'N', 'N', 'N', 'N', 'N', 'N', 'N', 'N', 'N', 'N', 'N', 'N', 'N', 'N', 'N', 'N', 'N', '', '', '', '', 0, 0, 0);
update user set password=password('testuser123') where user='testuser';
delete from db where user='testuser';
insert into db(host,db,user,Select_priv,Insert_priv,Update_priv,Delete_priv,Lock_tables_priv) values('%','testdb','testuser','Y','Y','Y','Y','Y');
flush privileges;

3. 配置tomcat的conf目录下的2个配置文件: server.xml , web.xml
   具体配置可以参考附件zip包中的文件.
   通过server.xml可以配置虚拟主机,能让很多个网站共用1个tomcat的80端口.(tomcat安装后默认为8080端口,如果放在互联网上请改为80端口)

4. 制作tomcat启动脚本文件,内容如下(假设保存为 startweb.sh,要修改属性为可执行 chmod a+x startweb.sh):

引用 export JAVA_HOME=/usr/local/jdk1.4.2
export PATH=$JAVA_HOME/bin:$PATH
export CLASSPATH=$JAVA_HOME/lib:$JAVA_HOME/jre/lib/rt.jar:.
/usr/local/tomcat4.1.31/bin/shutdown.sh
/usr/local/mysql/bin/mysqladmin shutdown -u root -pabcxyz123456
i=`ps -ef|grep -E "java"|grep -v grep|awk '{print$2}'`
kill -9 $i
i1=`ps -ef|grep -E "mysqld_safe"|grep -v grep|awk '{print $2}'`
kill -9 $i1

/usr/local/mysql/bin/mysqld_safe -u mysql &
/usr/local/tomcat4.1.31/bin/startup.sh

那么如果要启动或者重起tomcat,只要执行下这个脚本文件就可以了.

5. 将tomcat设置成自启动.
在 /etc/rc.d/rc.local 文件中加入
引用 /脚本存放的目录/startweb.sh


至此,java的web环境已经安装完毕了,所有的软件全部安装在目录 /usr/local/目录下.由于对应的安装软件都比较庞大,这里就不再提供,需要自己去另外下载相应的软件.如果你找到的安装软件与上面所说的不相同,那么请参考上面的安装和配置方法,软件版本的不同,安装和配置可能会有差别.



附件: server.xml,web.xml,my.cnf对应的zip包 (config.zip)
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: