阿里云Centos下安装JDK+Tomcat+Mysql步骤详解
标签: 云服务器
前言:以下我是按照Centos7的系统环境安装的,亲测可用
一.JDK的安装步骤
- 软件下载地址:
JDK:http://www.oracle.com/technetwork/java/javase/downloads/index.html (直接下载.tar.gz格式的文件)可以直接下载最新版本,我这里是jdk-8u144-linux-x64.tar.gz
- 利用xftp传输工具将jdk-8u144-linux-x64.tar.gz安装包传到云服务器上。
- 如果你直接直接将安装包放在/root路径下,以下是安装使用命令:
1.mkdir /usr/local/java (新建一个java文件夹)
2.cp jdk-8u144-linux-x64.tar.gz /usr/local/java (我一般放在这里面)
3.cd /usr/local/java (进入该目录)
4.tar -xvzf jdk-8u144-linux-x64.tar.gz (解压)
5.vi /etc/profile (配置系统环境变量)
6.在profile文件末尾添加
export JAVA_HOME=/usr/local/java/jdk1.8.0_144
export JRE_HOME=/usr/local/java/jdk1.8.0_144/jre
export PATH=$PATH:/usr/local/java/jdk1.8.0_144/bin
export CLASSPATH=./:/usr/local/java/jdk1.8.0_144/lib:/usr/local/java/jdk1.8.0_144/jre/lib
(注意jdk的位置,我这里是/usr/local/java)
7.source /etc/profile (让修改生效)
8.java -version (查看是否安装成功)如果出现:
[root@iz2ze4300ct6sdap2u81a6z ~]# java -version
java version "1.8.0_144"
Java(TM) SE Runtime Environment (build 1.8.0_144-b01)
Java HotSpot(TM) 64-Bit Server VM (build 25.144-b01, mixed mode)
9.可以再次重启系统,以确定生效
二.Tomcat的安装步骤
Tomcat安装
- 下载Tomcat的安装包:http://tomcat.apache.org/download-80.cgi
下载apache-tomcat-8.5.20.tar.gz - 利用xftp工具将apache-tomcat-8.5.20.tar.gz放在/usr/local下
- 执行以下命令进行安装:
cd /usr/local
tar -zxvf apache-tomcat-8.5.20.tar.gz // 解压压缩包
rm -rf apache-tomcat-8.5.20.tar.gz // 删除压缩包
- 启动Tomcat
[root@iz2ze4300ct6sdap2u81a6z ~]# cd /usr/local
[root@iz2ze4300ct6sdap2u81a6z local]# cd apache-tomcat-8.5.20
[root@iz2ze4300ct6sdap2u81a6z apache-tomcat-8.5.20]# cd bin
[root@iz2ze4300ct6sdap2u81a6z bin]# ./startup.sh
Using CATALINA_BASE: /usr/local/apache-tomcat-8.5.20
Using CATALINA_HOME: /usr/local/apache-tomcat-8.5.20
Using CATALINA_TMPDIR: /usr/local/apache-tomcat-8.5.20/temp
Using JRE_HOME: /usr/local/java/jdk1.8.0_144/jre
Using CLASSPATH: /usr/local/apache-tomcat-8.5.20/bin/bootstrap.jar:/usr/local/apache-tomcat-8.5.20/bin/tomcat-juli.jar
Tomcat started.
- 设置Tomcat能够外网访问
我用的阿里云服务器,首先在官网阿里云配置安全组规则,开放8080和80端口。
systemctl stop firewalld.service //停止firewall
systemctl disable firewalld.service //禁止firewall开机启动
firewall-cmd --state //查看默认防火墙状态(关闭后显示notrunning,开启后显示running)
firewall-cmd --zone=public --add-port=80/tcp --permanent
firewall-cmd --zone=public --add-port=8080/tcp --permanent
firewall-cmd --reload //重启防火墙
//--zone表示作用域 --add-port=80/tcp添加端口,格式为:端口/通讯协议
//--permanent为永久生效,没有此参数重启后失效
- 重启Tomcat
service tomcat restart
- 外网访问Tomcat:http://ip:8080
Tomcat设置开机自启动
- 在/etc/init.d/tomcat配置(如果没有该文件,就新建一个)
- tomcat文件配置如下:
#!/bin/sh
# chkconfig: 345 99 10
# description: Auto-starts tomcat
# /etc/init.d/tomcatd
# Tomcat auto-start
# Source function library.
#. /etc/init.d/functions
# source networking configuration.
#. /etc/sysconfig/network
RETVAL=0
export JAVA_HOME=/usr/local/java/jdk1.8.0_144
export JRE_HOME=/usr/local/java/jdk1.8.0_144/jre
export CATALINA_HOME=/usr/local/apache-tomcat-8.5.20
export CATALINA_BASE=/usr/local/apache-tomcat-8.5.20
start()
{
if [ -f $CATALINA_HOME/bin/startup.sh ];
then
echo $"Starting Tomcat"
$CATALINA_HOME/bin/startup.sh
RETVAL=$?
echo " OK"
return $RETVAL
fi
}
stop()
{
if [ -f $CATALINA_HOME/bin/shutdown.sh ];
then
echo $"Stopping Tomcat"
$CATALINA_HOME/bin/shutdown.sh
RETVAL=$?
return $RETVAL
fi
}
stop()
{
if [ -f $CATALINA_HOME/bin/shutdown.sh ];
then
echo $"Stopping Tomcat"
$CATALINA_HOME/bin/shutdown.sh
RETVAL=$?
sleep 1
ps -fu root | grep apache-tomcat-8.5.20 | grep -v grep | grep -v PID | awk '{print $2}'|xargs kill -9
echo " OK"
# [ $RETVAL -eq 0 ] && rm -f /var/lock/...
return $RETVAL
fi
}
case "$1" in
start)
start
;;
stop)
stop
;;
restart)
echo $"Restaring Tomcat"
$0 stop
sleep 1
$0 start
;;
*)
echo $"Usage: $0 {start|stop|restart}"
exit 1
;;
esac
exit $RETVAL
//注意:里面的环境变量设置为自己的,Tomcat文件但凡出现过都改为自己的
- chmod a+x tomcat//把tomcat改成可执行文件
- 查看服务器开机启动项情况查找tomcat的情况
chkconfig --list
//如果没有找到tomcat项 ,使用chkconfig命令把 tomcat 命令加入到系统启动队列中:
chkconfig --add tomcat
//再次查看
chkconfig --list
//显示的情况应该是这样的
tomcat 0:off 1:off 2:off 3:off 4:off 5:off 6:off
然后chkconfig tomcat on设置开机启动
chkconfig --list
tomcat 0:off 1:off 2:on 3:on 4:on 5:on 6:off
- 重启tomcat--service tomcat restart(如果不行,重启下服务器试一下)
Mysql的安装步骤
这里我是用过yum来进行MySQL数据库的安装的,通过这种方式进行安装,可以将跟MySQL相关的一些服务,Jar包都给我们安装好,比较方便。
- 查看系统是否已经安装了MySQL
[root@localhost ~]# service mysqld start
mysqld:未被识别的服务 //说明没有安装
- 使用yum命令进行mysql的安装
[root@iz2ze4300ct6sdap2u81a6z ~]#yum list | grep mysql //查看yum下提供下载的mysql版本信息
[root@iz2ze4300ct6sdap2u81a6z ~]#yum install -y mysql-server mysql mysql-deve //数据库的安装
[root@iz2ze4300ct6sdap2u81a6z ~]# rpm -qa | grep mysql
mysql-community-common-5.6.37-2.el7.x86_64
mysql-community-devel-5.6.37-2.el7.x86_64
mysql-community-libs-5.6.37-2.el7.x86_64
mysql-community-client-5.6.37-2.el7.x86_64
mysql-community-server-5.6.37-2.el7.x86_64
mysql-community-release-el7-5.noarch
//查看Mysql是否安装成功
- 启动mysql
[root@iz2ze4300ct6sdap2u81a6z ~]# service mysqld start
Redirecting to /bin/systemctl start mysqld.service
- 进入mysql
首先是无密码的状态:
直接 mysql 命令
然后直接敲回车 - 设置mysql的密码
mysql>use mysql
mysql>update user set password=password('密码') where user='root'
//提示ERROR 1054 (42S22): Unknown column 'password' in 'field list',则换成update MySQL.user(或者user) set authentication_string=password('密码') where user='root' ;可能是MySQL中password换成了authentication_string
mysql>flush privileges;
mysql>exit
service mysqld restart//重启MySQL,以使生效
//然后就可以通过密码登录了
-
错误分析:
登录报错ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password:yes)
1.停止Mysql服务
systemctl stop mysqld.service
2.vi /etc/my.cnf
在[mysqld]下加入skip-grant-tables 使其可以无密登录
3.启动mysql:systemctl start mysqld.service
4.mysql -u root 无密码登录
5.use mysql
6.修改密码:update mysql.user set authentication_string=password('密码') where user='root' ;
7.回到/etc/my.cnf去掉skip-grant-tables
8.重启MySQL:systemctl restart mysqld.service记住一定要重启
- 设置外网访问mysql
1:设置mysql的配置文件 /etc/my.cnf ,找到 bind-address =127.0.0.1 将其注释掉;//作用是使得不再只允许本地访问;(有就注释,没有就不用)
2.登录mysql:mysql -u root -p
3.mysql>use mysql
4.mysql> select user,host from user;//查询host值,没有"%"这个值执行下一步
5.mysql> update user set host='%' where user='root';
6.mysql>flush privileges;//这个一定要加
7.重启mysql
8.如果不行,考虑配置阿里云安全组规则:配置3306端口。