Tomcat项目部署
- 利用可视化工具:SSH登录,输入用户名和密码,登录到图形界面和命令界面;
2:安装jdk(我使用的第一种方法)
第一种方法
只需要一条命令就可以安装jdk:
yum install java-1.8.0-openjdk* -y
执行过这条命令无需配置,直接可以使用。
https://blog.csdn.net/yao22yao/article/details/54646004
配置环境:
一.安装JDK
1、首先要查看服务器的系统版本,是32位还是64位
> #getconf LONG_BIT 64
2、下载64位版本的jdk
下载地址:http://www.Oracle.com/technetwork/Java/javase/downloads/jdk8-downloads-2133151.html
版本:jdk-8u91-Linux-x64.rpm
3、使用ftp工具如FileZilla,xftp,winscp,将下载好的文件传到服务器上,我是传到了home文件夹
4、查看当前有没有安装jdk
#rpm -qa |grep jdkjdk-1.7.0_65-fcs.i586
如果有就移除
rpm -ejdk-1.7.0_65-fcs.i586
5、输入安装命令,无须赋予权限,可以直接执行
rpm -ivh /home/jdk-8u91-linux-x64.rpm
6、设置环境变量(在文件末尾加入)
vim /etc/profile
(按i进入编辑模式)
export JAVA_HOME=/usr/local/jdk1.8.0_92
export CLASSPATH=.:$JAVA_HOME/lib:$CLASSPATH
export PATH=$JAVA_HOME/bin:$PATH
JAVA_HOME路径换成你自己安装的路径后面两行不变
(编辑完成后 按esc再按shift+:键 然后输入 wq保存文件并退出)
7、输入命令检查是否已经安装设置好(无须重启服务器)
java -version
java
javac
二.Tomcat的配置部署
1、下载tomcat
http://tomcat.apache.org/download-70.cgi
选择core下面的tar.gz包下载
2、上传和安装
我是把上传的软件都放在了home文件夹,解压即可实现安装,安装目录我放在了/usr/local下面
#tar -zxvf apache-tomcat-8.0.33.tar.gz //解压文件 或者:tar xvf apache-tomcat-8.0.33.tar.gz
#cp-R apache-tomcat-8.0.33 /usr/local/tomcat //移动和重命名
3、启动和测试
./startup.sh //**在tomcat的bin目录下执行此命令,显示下面的信息**
Using CATALINA_BASE: /usr/local/tomcat
Using CATALINA_HOME: /usr/local/tomcat
Using CATALINA_TMPDIR: /usr/local/tomcat/temp
Using JRE_HOME: /usr/java/jdk1.7.0_67
Using CLASSPATH: /usr/local/tomcat/bin/bootstrap.jar:/usr/local/tomcat/bin/tomcat-juli.jar
Tomcat started.
测试:访问http://localhost:8080,查看是否成功,如果不成功,检查端口情况
#netstat -ano|grep 8080
如果端口被占用,可以修改/conf/server.xml 里的端口号
用./stratup.sh启动看不到详细的日志信息,如果想看详细信息,可以用./catalina.sh run启动,就可以像中一样查看启动信息了
4、在/usr/local/tomcat/bin下有可执行程序
启动tomcat # ./startup.sh
关闭tomcat # ./shutdown.sh
5、设置tomcat开机自启
1、进入编辑
vi /etc/rc.d/rc.local
2、打开后在最底部复制下面
export JDK_HOME=/usr/java/jdk1.6.0_41
export JAVA_HOME=/usr/java/jdk1.6.0_41
/uer/local/tomcat/bin/startup.sh
3、重启服务器,试试能不能访问。
Tips:
如果JDK和Tomcat安装的目录不跟上面的一样,请修改相应路径
三.Java web应用的部署
1.把web应用在eclipse里面export成war包文件。
2.将war解压出来上传到服务器中
3.在tomcat 的conf目录中,在Catalina\localhost(此处需要注意目录的大小写)目录下新建一个XML文件,任意命名,只要和当前文件中的文件名不重复即可,代码如下。
<?xml version="1.0" encoding="UTF-8"?><Context path="/ssp" docBase="/home/soft/app/kok_adv_ssp_op/ROOT" debug="0" privileged="true" reloadable="true"></Context>
path 是虚拟路径;
docBase 是应用程序的物理路径;
debug 则是设定debug level, 0表示提供最少的信息,9表示提供最多的信息privileged 设置为true的时候,才允许Tomcat的Web应用使用容器内的
reloadable 如果为true,则tomcat会自动检测应用程序的/WEB-INF/lib 和/WEB-INF/classes目录的变化,自动装载新的应用程序,可以在不重起tomcat的情况下改变应用程序,实现热部署
Servletpath要和xml文件名相同 ——docBase为项目路径
4.关闭后再次启动tomcat
5.访问时输入http://ip地址:8080/上面的path名/….
例如上面输入http://ip地址:8080/ssp/….
进行访问
3:安装mysql服务器(我使用的方法2)
官网下载安装mysql-server
# wget http://dev.mysql.com/get/mysql-community-release-el7-5.noarch.rpm
# rpm -ivh mysql-community-release-el7-5.noarch.rpm
# yum install mysql-community-server
安装成功后重启mysql服务。
# service mysqld restart
4:修改mysql-server登陆密码
修改的用户都以root为列。
一、拥有原来的myql的root的密码;
方法一:
在mysql系统外,使用mysqladmin
# mysqladmin -u root -p password "test123"
Enter password: 【输入原来的密码】
方法二:
通过登录mysql系统,
# mysql -uroot -p
Enter password: 【输入原来的密码】
mysql>use mysql;
mysql> update user set password=passworD("test") where user='root';
mysql> flush privileges;
mysql> exit;
二、忘记原来的myql的root的密码;
首先,你必须要有操作系统的root权限了。要是连系统的root权限都没有的话,先考虑root系统再走下面的步骤。
类似于安全模式登录系统,有人建议说是pkill mysql,但是我不建议哈。因为当你执行了这个命令后,会导致这样的状况:
/etc/init.d/mysqld status
mysqld dead but subsys locked
这样即使你是在安全模式下启动mysql都未必会有用的,所以一般是这样/etc/init.d/mysqld stop,如果你不幸先用了pkill,那么就start一下再stop咯。
# mysqld_safe --skip-grant-tables &
&,表示在后台运行,不再后台运行的话,就再打开一个终端咯。
# mysql
mysql> use mysql;
mysql> UPDATE user SET password=password("test123") WHERE user='root';
mysql> flush privileges;
mysql> exit;
##本来mysql是不分大小写的,但是这个是修改的mysql中的mysql数据库的具体的值,要注意到。
- mysql创建用户并授予远程访问权限
第一步:登陆mysq mysql -u root -p
第二步 创建mysql用户
使用如下命令创建一个用户名和密码分别为"fly"和"123456"的用户。
CREATE USER 'fly'@'localhost' IDENTIFIED BY '123456';
第三步 :用户创建完成之后,想实现远程访问该用户怎么做呢?
在mysql控制台执行
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'root' WITH GRANT OPTION;
FLUSH PRIVILEGES;
'root'@'%' 可以这样理解: root是用户名,%是主机名或IP地址,这里的%代表任意主机或IP地址,你也可替换成任意其它用户名或指定唯一的IP地址;'MyPassword'是给授权用户指定的登录数据库的密码;另外需要说明一点的是我这里的都是授权所有权限,可以指定部分权限,GRANT具体操作详情见:http://dev.mysql.com/doc/refman/5.1/en/grant.html
第六步:mysql表明区分大小写转换为不区分大小写(这样为了避免在设计表的时候有大写和小写出现异常)
linux下mysql表名不区分大小写
导入sql文件
Show databases;
Use 数据库名称;
Source 文件位置;
第八步:CentOS中安装与配置Tomcat
官网下载tomcat:
进入目录并解压
cd /usr/local
tar -zxv -f /root/apache-tomcat-8.5.34.tar.gz
mv apache-tomcat-8.5.34 tomcat
启动
/usr/local/tomcat/bin/startup.sh
tomcat部署JavaWeb项目分为下面的步骤:
1、删除tomcat按照目录的ROOT文件夹下的所有文件
2、把war包复制到ROOT文件下面,解压缩:
jar -xvf /usr/local/tomcat/webapps/ROOT/eova-oss.war;
3、结束所有的java进程:ps -e|grep java|awk '{print "kill -9 "$1}'|sh
4、启动tomcat:sh tomcat目录/bin/startup.sh;或者是进入到tomcat的bin目录下执行:./startup.sh
5、访问:在主机电脑通过浏览器访问192.168.1.100:8080(centos的Ip和端口号),就可以打开项目的开始页面。
注意事项:
1.用户名和密码汇总
用户名:root 密码:root;
用户名:fly 密码;123456
虚拟机:root 密码:Aa123456
2.防火墙的关闭
1、关闭firewall:
systemctl stop firewalld.service #停止firewall
systemctl disable firewalld.service #禁止firewall开机启动
firewall-cmd --state #查看默认防火墙状态(关闭后显示notrunning,开启后显示running)
补充:
1.chmod -R 0777 * (分配所有的权限)
chmod -R a+r * 读的权限
ps aux |grep mysql (查看mysql状态)
netstat -ano
lsof -i:3306 (查看端口号下的命令)
service iptables stop(关闭防火墙)
3.centos如何操作对外开放80,3306端口号或者其他端口号
firewall-cmd --zone=public --add-port=8080/tcp --permanent
说一下这一句的意思吧,因为centos7 已经更改了防火墙策略,所以使用这种方式来打开端口
--zone #作用域
--add-port=8080/tcp #添加端口,格式为:端口/通讯协议
--permanent #永久生效,没有此参数重启后失效
重启防火墙:firewall-cmd --reload
4.centos7环境变量配错导致命令不能用
吓得我都不知道挖掘机哪家强了,
centos7由于配置环境变量的时候少打了$PATH,导致很多命令不能用了,吓了一跳
解决办法:
1、直接在命令行输入: export PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin 然后按回车;
2、此时命令应该都能用了,幸亏export还能用,以后操作要注意
5.安装java环境,安装jdk并配置环境变量
一、安装java环境
centos7安装java环境比较简单,我是通过virtualBox安装的最小的centos7,安装完毕后设置好IP,要能够访问外网,我上一篇文章里详细讲了如何通过centos7设置IP访问外网。好了,废话不多说,直接上命令:
yum -y install java-1.8.0-openjdk java-1.8.0-openjdk-devel
yum命令需要联网 该操作就是从网上下载jdk8到你的centos7并且安装到默认目录。
我们在Windows系统内用eclipse开发还需要设置JAVA_HOME、CLASSPATH、PATH环境变量,同样的在centos7里面也一样,安装完毕之后,
将下面的三行添加到 /etc/profile 中:
export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.121-0.b13.el7_3.x86_64
export CLASSPATH=.:$JAVA_HOME/jre/lib/rt.jar:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export PATH=$PATH:$JAVA_HOME/bin
保存关闭后,执行:source /etc/profile #让设置立即生效。
这里稍微说明一下/etc/profile文件就是centos7的环境变量配置文件。这个文件是每个用户登录时都会运行的环境变量设置,如果仅仅是修改是不会立即生效的,需要重新登录的时候才能生效,通过命令:source /etc/profile可以让刚才的设置立即生效。
至此,java环境安装完毕,和windows下一样,运执行命令:java -version
会出现以下信息:
openjdk version "1.8.0_121"
OpenJDK Runtime Environment (build 1.8.0_121-b13)
OpenJDK 64-Bit Server VM (build 25.121-b13, mixed mode)
说明java环境安装成功!
6.查看centos版本
lsb_release -a
- 安装tomcat环境
- 查看centos版本
总体来说这个比较简单就是下载压缩包、解压缩、运行。和Windows一样。具体步骤如下:
下载linux下的Tomcat压缩包 apache-tomcat-8.5.13.tar.gz
放到home下(目录随意,可以自己新建一个文件夹) 解压缩
执行命令:tar -zxvf apache-tomcat-8.5.13.tar.gz
然后就会多了一个apache-tomcat-8.5.13的文件夹,其实这样tomcat就相当于安装成功了,是不是很简单,但是要运行它还需要一些操作。
1、启动tomcat
执行命令:/home/apache-tomcat-8.5.13/bin/startup.sh
2、开发8080端口
firewall-cmd --zone=public --add-port=8080/tcp --permanent
说一下这一句的意思吧,因为centos7 已经更改了防火墙策略,所以使用这种方式来打开端口
--zone #作用域
--add-port=8080/tcp #添加端口,格式为:端口/通讯协议
--permanent #永久生效,没有此参数重启后失效
重启防火墙:firewall-cmd --reload
- 关于防火墙
FirewallD is not running解决措施
执行firewall-cmd --permanent --zone=public --add-port=3306/tcp,提示FirewallD is not running,如下图所示。
通过systemctl status firewalld查看firewalld状态,发现当前是dead状态,即防火墙未开启。
通过systemctl start firewalld开启防火墙,没有任何提示即开启成功。
再次通过systemctl status firewalld查看firewalld状态,显示running即已开启了。
如果要关闭防火墙设置,可能通过systemctl stop firewalld这条指令来关闭该功能。
再次执行执行firewall-cmd --permanent --zone=public --add-port=3306/tcp,提示success,表示设置成功,这样就可以继续后面的设置了。
参考:https://www.cnblogs.com/kccdzz/p/8110143.html
- 验证
可以在Windows下通过输入虚拟机的ip地址来访问例如:192.168.1.100:8080
显示了tomcat的欢迎页,说明了tomcat已经成功运行了。
无法访问端口:防火墙已经关闭了,端口也放行了,本地和服务器只pingIP是可以的,加上端口就不可以了,怀疑端口安全组未放行。
https://help.aliyun.com/document_detail/25475.html?spm=5176.2020520101.0.0.41a14df5amefwg
- 部署项目
直接部署war到webapp下面,重新启动tomcat,注意数据库连接的端口号和地址
修改centos7系统语言
永久修改就要把配置写入文件里面
方法(一)
vi /etc/locale.conf
##
加下面内容到第一行,设置中文
LANG=zh_CN.UTF8