Linux下配置两个或多个Tomcat启动
标签:
杂谈 |
分类: linux_tomcat |
步骤如下:
(1)修改/etc/profile文件。添加一组java环境变量,和两组CATALINA环境变量(我没有进行此步骤的设置,可能因为我的Tomcat是免安装版的吧)记得修改完要使其生效,用命令:source /etc/profile
JAVA_HOME=/usr/java/jdk1.7.0
PATH=$JAVA_HOME/bin:$PATH
CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export JAVA_HOME
export PATH
export CLASSPATH
#第一个Tomcat
CATALINA_BASE=/usr/local/apache-tomcat-6.0.35
CATALINA_HOME=/usr/local/apache-tomcat-6.0.35
export CATALINA_BASE CATALINA_HOME
#第二个Tomcat
CATALINA_2_BASE=/usr/local/apache-tomcat-6.0.35-second
CATALINA_2_HOME=/usr/local/apache-tomcat-6.0.35-second
export CATALINA_2_BASE CATALINA_2_HOME
#第一个Tomcat路径
TOMCAT_HOME=/usr/local/apache-tomcat-6.0.35
export TOMCAT_HOME
#第二个Tomcat路径
TOMCAT_2_HOME=/usr/local/apache-tomcat-6.0.35-second
export TOMCAT_2_HOME
(2)把tomcat_2/conf下的server.xml打开,修改关闭端口与启动端口。这样就可以在linux下同时运行两个tomcat了。运行更多tomcat方法是一样的。
(3)主要要点就是tomcat启动的时候会去查找tomat 的根目录,而这是通过查询系统环境变量CATALINA_HOME
以及
CATALINA_BASE 来做到的,于是我们只需要设置这两个变量即可。
现在我们把tomcat拷贝成2份,分别为 tomcat1 和 tomcat2,tomcat1 我们使用之前配置好的默认配置
(CATALINA_HOME 以及 CATALINA_BASE 均指向 tomca1 目录),但tomcat2
我们不能再使用系统上配置的这两个
变量了,那么我们就在 tomcat2的bin目录下面的 catalina.sh 临时修改设置 CATALINA_HOME 和
CATALINA_BASE
为tomcat2的根目录即可,如果再加tomcat 以此类推即可。
打开catalina.sh ,找到下面红字,在下面增加如下代码
# OS specific
support. $var _must_ be set to either true or
false.
# myself : add
export CATALINA_BASE=$CATALINA_2_BASE
export CATALINA_HOME=$CATALINA_2_HOME
#设置虚拟机参数
JAVA_OPTS="-Xms512m -Xmx512m -Xss1024K -XX:PermSize=128m
-XX:MaxPermSize=256m"
另二:
Linux下同时启动两个Tomcat进行设置.
Linux版本:Linux version 2.6.32-431.11.2.el6.x86_64
Tomcat:apache-tomcat-6.0.41.tar.gz(官方下载)
解压tar.gz:tar -zxvf apache-tomcat-6.0.41.tar.gz 至相应的路径下,可解压至两个不同的路径或者相同的路径下不同的文件夹,不需要安装,直接部署程序即可。
接下来修改tomcat文件夹conf目录下的server.xml文件:
<Server port="8015" shutdown="SHUTDOWN"> 默认为8005--》修改为8015
<!--APR library loader. Documentation at /docs/apr.html -->
<Listener className="org.apache.catalina.core.AprLifecycleListener" SSLEngine="on" />
<!--Initialize Jasper prior to webapps are loaded. Documentation at /docs/jasper-howto.html -->
<Listener className="org.apache.catalina.core.JasperListener" />
<!-- Prevent memory leaks due to use of particular java/javax APIs-->
<Listener className="org.apache.catalina.core.JreMemoryLeakPreventionListener" />
<!-- JMX Support for the Tomcat server. Documentation at /docs/non-existent.html -->
<Listener className="org.apache.catalina.mbeans.ServerLifecycleListener" />
<Listener className="org.apache.catalina.mbeans.GlobalResourcesLifecycleListener" />
.........
<Connector port="8091" protocol="HTTP/1.1" 默认为8080--》修改为8091
connectionTimeout="20000"
redirectPort="8443" />
........
<Connector port="8019" protocol="AJP/1.3" redirectPort="8443" />
默认为8009--》修改为8019
以上三处红色注明的部分修改,只需要两个文件中此三处不同,启动tomcat,成功。
两个一样的tomcat不能同时启动解决方法
问题:我的服务器是Tomcat7.0.20,修改完所有端口之后(shutdown端口、http端口、https端口、ajp端口),启动一个就不能启动另一个。
两 个startup.bat最前面加上一句set CATALINA_HOME=当前TOMCAT路径就可以了 当第一个tomcat启动后,后面tomcat的server.xml中的端口不管怎么改,仍然会报端口冲突。后来在dos下运行才发现所有的 tomcat都会去找CATALINA_HOME和CATALINA_BASE这两个环境变量,因此步骤如下:
1.使用压缩版的tomcat不能使用安装版的。
2.第一个tomcat的配置不变。
3.增加环境变量CATALINA_HOME2,值为新的tomcat的地址;增加环境变量CATALINA_BASE2,值为新的tomcat的地址。
4.修改新的tomcat中的startup.bat,把其中的CATALINA_HOME改为CATALINA_HOME2。
5.修改新的tomcat中的catalina.bat,把其中的CATALINA_HOME改为CATALINA_HOME2,CATALINA_BASE改为CATALINA_BASE2。
6.1 <Server port="8005" shutdown="SHUTDOWN">把端口改为没有是使用的端口。
7成功!
8 第三、第四.....等N台服务器参考3~6 步顺序进行即可!祝好运! 在cmd命令行执行1、netstat –ano 查看端口情况2、tasklist 查看运行程序情况3、杀掉占用你多需要端口的程序
Linux下配置两个或多个Tomcat启动的更多相关文章
- windows下配置两个或多个Tomcat启动的方法
确保window的环境变量中找不到CATALINA_HOME和CATALINA_BASE 修改server.xml,用解压版的tomcat,不要用安装版的. 1.修改http访问端口 conf下的se ...
- linux下配置tomcat集群的负载均衡
linux下配置tomcat集群的负载均衡 一.首先了解下与集群相关的几个概念集群:集群是一组协同工作的服务实体,用以提供比单一服务实体更具扩展性与可用性的服务平台.在客户端看来,一个集群就象是一个服 ...
- Linux下配置多个tomcat多个域名
Linux下配置多个tomcat多个域名复制tomcat:mkdir /home/server/testcp -rf /home/server/shichuan/* /home/server/test ...
- Linux 下配置 hosts 并设置免密登录
Linux 下配置 hosts 并设置免密登录 作者:Grey 原文地址: 博客园:Linux 下配置 hosts 并设置免密登录 CSDN:Linux 下配置 hosts 并设置免密登录 说明 实现 ...
- Linux下配置一个VNC服务器
在Linux下配置一个VNC服务器,并设置2个用户,要求其中一个用户登录时不需要输入密码. 然后在客户端使用ssh+vncview的方式访问. 1确认vnc安装 2配置vncserver 3测试vnc ...
- linux下配置mysql默认编码utf8
linux下配置mysql默认编码utf8 下面是需要在对应地方加入的配置 [client] default-character-set=utf8 [mysqld] character-set-ser ...
- Linux下配置Lamp
linux下配置lamp步骤: 一.快速安装Apache+PHP5+MySql 先更新: # yum update 然后安装LAMP环境:(163的yum源上只有php5.1.6 mysql 5.0. ...
- Linux下配置PHP开发环境
转载于: http://www.uxtribe.com/php/405.html 该站下有系列PHP文章. 在Linux下搭建PHP环境比Windows下要复杂得多.除了安装Apache,PHP等软件 ...
- 一步一步教你如何在linux下配置apache+tomcat(转)
一步一步教你如何在linux下配置apache+tomcat 一.安装前准备. 1. 所有组件都安装到/usr/local/e789目录下 2. 解压缩命令:tar —vxzf 文件名(. ...
随机推荐
- ModelMap和ModelAndView区别
首先介绍ModelMap和ModelAndView的作用 ModelMap ModelMap对象主要用于传递控制方法处理数据到结果页面,也就是说我们把结果页面上需要的数据放到ModelMap对象中即可 ...
- c#读取LOG文件并解决读取提示被其他进程占用问题
c# 读写文件时文件正由另一进程使用,因此该进程无法访问该文件,在IO处理上遇到了无法操作的问题. 文件“C:\u_ex.log”正由另一进程使用,因此该进程无法访问该文件. u_ex.log是一个日 ...
- Laravel 中的 Many-To-Many
在实际的开发中,我们经常会接触到几种常见的对应关系模式: One-To-One //一对一 One-To-Many //一对多 Many-To-Many //多对多 在刚刚开始接触到这些概念的时候,其 ...
- AC日记——Andryusha and Colored Balloons codeforces 780c
C - Andryusha and Colored Balloons 思路: 水题: 代码: #include <cstdio> #include <cstring> #inc ...
- POSTGRESQL 完美备份还原
1.POSTGRESQL 完美备份还原 进入到Postgresql下的bin文件夹,会看到不少的exe文件,这就是PostgreSQL内置的工具了.里面会找到pg_dump.exe.我们实际使用的就是 ...
- spark热点互动问答
[Spark亚太研究院 决战云计算大数据时代 100期公益大讲堂 互动问答] Q1:我想问,hdfs的namenode挂了,怎么处理? 使用ZooKeeper: 使用Mesos: 使用Yarn: Q2 ...
- GridView的TemplateField
BoundField只能显示一个单独的数据字段.如果我们想要在一个GridView列中显示两个或者更多的数据字段的值的时候该怎么办呢? 1. GridView的一列同时显示数据源中的两个字段 现需要显 ...
- centos6.5 安装vlc播放器【超简单】
# cd /etc/yum.repos.d/ # wget http://pkgrepo.linuxtech.net/el6/release/linuxtech.repo //我试了3次才下载下来 # ...
- HDU 2586.How far away ?-离线LCA(Tarjan)
2586.How far away ? 这个题以前写过在线LCA(ST)的,HDU2586.How far away ?-在线LCA(ST) 现在贴一个离线Tarjan版的 代码: //A-HDU25 ...
- POJ 2018 Best Cow Fences
斜率优化. 设$s[i]$表示前缀和,$avg(i,j)=(s[j]-s[i-1])/(j-(i-1))$.就是$(j,s[j])$与$(i-1,s[i-1])$两点之间的斜率. 如果,我们目前在计算 ...
转载▼