返回顶部

Linux 服务器安装JDK、MySQL和Tomcat,发布web项目解决404问题

你是否也遇到这样的问题

Linux里安装了JDK、Tomcat和MySQL,但是无法访问Tomcat下webapps中的项目,404。
首先你要确保环境没有问题,其次就是项目代码的问题。在本机上能运行,现在怎会404呢?
解决思路:连接数据库的四要素有问题,数据库不在同一个地方,有可能名字也变了。还有就是useUnicode=true&characterEncoding=UTF-8,解决中文检索不到数据的问题。

仔细阅读前提

  • 说明:安装包全部在window环境下载好,必须以.tar.gz结尾,才能在Linux环境使用。使用 Xftp 上传到虚拟机上/home/mytest/目录下。

JDK的下载、安装

  • 下载JDK

  • 解压缩 tar.gz文件:tar -zxvf jdk-8u121-linux-x64.tar.gz -C /usr/local/,其中 -C /usr/local 是指定解压后的文件存放位置

  • Linux使用默认JDK环境,需要在/etc目录下的profile文件最后加上:

    export JAVA_HOME=/usr/local/jdk1.8.0_121
    export PATH=$JAVA_HOME/bin:$PATH
    export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JAVA_HOME/jre/lib/rt.jar
    
  • profile文件修改成,执行 source /etc/profile 让上面的配置生效

  • 执行java -version检查是否配置成功

Tomcat下载安装

  • tomcat官网:http://tomcat.apache.org/
  • 国内镜像:http://mirror.bit.edu.cn/apache/tomcat/tomcat-9/v9.0.0.M26/bin/apache-tomcat-9.0.0.M26.tar.gz
  • 解压缩:tar -zxvf apache-tomcat-8.5.16.tar.gz -C /usr/local/
  • 启动:在tomcat安装目录/bin下执行./startup.sh
  • 关闭:./shutdown.sh
  • 日志文件:在tomcat安装目录/logs下生成日志文件,如果项目运行出现问题,在这里查看日志文件。
    • catalian.out
      控制台输出的日志文件(在eclippse中的console窗口的内容),查看此文件。可以使用cat , more , less , grep , 常用查看日志 tail -f catalina.out
    • localhost_access_log.2017-08-16.txt
      tomcat接收到的http请求日志。tomcat服务器上运行的web应用接收的请求,请求方式(get,post),请求地址,请求参数(get请求),处理是否成功都在此文件记录。

mysql 下载安装

  • (1) 下载MySQL

  • (2) 上传MySQL安装文件到Linux,这里先不要着急压缩,检查系统是否安装了mariadb数据库,检查linux是否安装了mariadb数据库,mariadb数据库是mysql的分支。是免费开源的。mariadb和msyql会有冲突。首先要检查安装了mariadb, 卸载掉。

  • (3) 卸载mariadb:若linux中安装了mariadb数据库,先卸载掉,mariadb数据库可能与安装mysql发生冲突,执行命令:yum -y remove mariadb-libs.x86_64

  • (4) 解压mysql:tar -zxvf mysql-5.7.18-linux-glibc2.5-x86_64.tar.gz -C /usr/local/,将解压后的mysql-5.7.18-linux-glibc2.5-x86_64改名为mysql-5.7.18 或者 mysql,为了明确mysql的版本,建议改名为mysql-5.7.18,执行:mv mysql-5.7.18-linux-glibc2.5-x86_64 mysql-5.7.18

  • (5) 创建数据文件夹data:data文件夹是mysql用来存放数据库文件的,数据库的表数据都放在data目录。默认没有data目录,可以手工创建data目录,在mysql-5.7.18文件夹目录下创建一个data文件夹,切换到mysql-5.7.18目录,执行创建文件夹命令 mkdir data

  • (6) 创建用户执行 mysqld 命令:创建mysql用户,用来执行MySQL的命令mysqld ,此命令用来初始化msyql基础信息。执行命令:useradd mysql

  • (7) 初始化MySQL:使用mysql的 mysqld 命令初始化数据库的基本信息。切换到mysql-5.7.18/bin目录下执行。命令(注意下面的命令是在一行执行的):
    ./mysqld --initialize --user=mysql --datadir=/usr/local/mysql-5.7.18/data --basedir=/usr/local/mysql-5.7.18,该命令执行后,会生成一个临时的mysql数据库root用户的密码,请先拷贝出来记住,后续第一次登录mysql需要使用

  • (8) 启用安全功能:在服务器与客户机之间来回传输的所有数据进行加密。通过证书提供了身份验证机制,mysql命令程序,mysql_ssl_rsa_setup提供了开启数据加密功能,生成数字证书。在mysql-5.7.18/bin目录下执行命令:./mysql_ssl_rsa_setup --datadir=/usr/local/mysql-5.7.18/data

  • (9) 修改mysql安装目录的权限:mysql安装后,需要更改mysql-5.7.18整个文件夹目录权限,更改所属的用户和组,是之前创建的mysql用户。在mysql安装目录的上级(/usr/local/)位置,执行命令chown -R mysql:mysql /usr/local/mysql-5.7.18/,R : 表示递归,更改目录中所有子文件夹的权限

  • (10) 启动MySQL:mysql-5.7.18/bin目录下执行命令:./mysqld_safe &(其中 & 符号表示后台启动),mysqld_safe程序会在启动MySQL服务器后继续监控其运行情况,并在其死机时重新启动它。用mysqld_safe程序来启动MySQL服务器的做法在unix/linux系统上很常见。确认msyql是否启动,查看进程使用ps -ef | grep mysql

  • (11) 进入mysql:mysql-5.7.18/bin目录下执行命令:
    ./mysql -uroot -p,-u 表示使用root用户登录系统,-p 表示使用密码登录,使用第7步生成的密码。

  • (12) 修改root密码:执行sql语句 show databases; 第一次使用将会提示修改mysql的root用户密码,修改mysql的密码,命令语法:alter user 'root'@'localhost' identified by '123456';(注意:sql语句结尾必须要有分号 ;)

  • (13) 授权远程访问:授权远程访问,在没有授权之前只能在本机访问msyql, 远程授权就是让其他计算机通过网络访问mysql(这样远程客户端才能访问)授权命令:grant all privileges on *.* to root@'%' identified by '123456';,更新权限信息,执行flush刷新权限flush privileges;

  • (14) 测试mysql客户端访问mysql:连接错误:可能是Linux的防火墙起作用。可以将防火墙先关闭。
    查看防火墙状态:systemctl status firewalld
    让防火墙可用:systemctl enable firewalld
    让防火墙不可用:systemctl disable firewalld
    开启防火墙:systemctl start firewalld
    禁用防火墙:systemctl stop firewalld

  • (15) 关闭MySQL服务: 在msyql客户端,执行exit退出msyql自己的客户端。关闭mysql服务器,mysql-5.7.18/bin目录下执行: ./mysqladmin -uroot -p shutdown 输入密码关闭

web项目部署到Linux系统

posted @ 2021-10-26 20:34  凑数的园丁  阅读(553)  评论(0编辑  收藏  举报