直接用tar解压官方原生包是linux部署tomcat和mysql最轻量、最可控的方式,不依赖系统包管理器,避免版本冲突,适合生产环境精细化控制。

直接用 tar 解压官方原生包,是 Linux 上部署 Tomcat 和 MySQL 最轻量、最可控的方式。它不依赖系统包管理器(如 apt/yum),避免版本冲突和权限干扰,适合生产环境精细化控制。
Tomcat 解压与基础配置
官方 Tomcat 是纯 Java 应用,解压即用,无需编译安装。
Java JDK 25 来自 OpenJDK 官方归档,版本为 JDK 25,本条下载地址已指向官方 Windows x64 zip 安装包直链,适合调试旧项目或兼容旧版 Java 运行环境。
- 下载 tar.gz 包(例如 Tomcat 9.0.90)到服务器,推荐放 /opt 或 /usr/local:
wget https://dlcdn.apache.org/tomcat/tomcat-9/v9.0.90/bin/apache-tomcat-9.0.90.tar.gz - 解压并重命名(便于后续管理):
tar -zxvf apache-tomcat-9.0.90.tar.gz -C /opt<br>mv /opt/apache-tomcat-9.0.90 /opt/tomcat
- 确认 JDK 已就位(Tomcat 启动依赖 JAVA_HOME):
java -version正常输出,且echo $JAVA_HOME指向有效 JDK 目录(如/usr/lib/jvm/java-11-openjdk-amd64) - 启动前可微调端口或编码(非必须但推荐):
编辑/opt/tomcat/conf/server.xml,找到<connector port="8080"> 行,按需修改端口;在 <code><connector> 标签内加 <code>URIEncoding="UTF-8" - 启动服务:
/opt/tomcat/bin/startup.sh
查看日志确认:tail -f /opt/tomcat/logs/catalina.out
MySQL 解压版部署要点
MySQL 官方 tar.gz 包是“免安装版”,但需手动初始化数据目录、授权、配置服务,比 apt/yum 安装稍繁琐,但更透明。
- 下载对应平台的 Linux-Generic 包(如 mysql-8.0.33-linux-glibc2.12-x86_64.tar.xz):
wget https://dev.mysql.com/get/Downloads/MySQL-8.0/mysql-8.0.33-linux-glibc2.12-x86_64.tar.xz - 解压并软链接(方便升级):
tar -xf mysql-8.0.33-linux-glibc2.12-x86_64.tar.xz -C /usr/local<br>ln -s /usr/local/mysql-8.0.33-linux-glibc2.12-x86_64 /usr/local/mysql
- 创建 mysql 用户(安全必需):
groupadd mysql<br>useradd -r -g mysql -s /bin/false mysql
- 初始化数据目录(关键步骤):
cd /usr/local/mysql<br>mkdir data<br>chown mysql:mysql . data<br>bin/mysqld --initialize --user=mysql --datadir=/usr/local/mysql/data
注意:控制台会输出临时 root 密码(类似A temporary password is generated for root@localhost: xxxxxx),务必记录 - 配置 my.cnf(放在
/etc/my.cnf):[mysqld]<br>basedir = /usr/local/mysql<br>datadir = /usr/local/mysql/data<br>socket = /tmp/mysql.sock<br>port = 3306<br>character-set-server = utf8mb4<br>default_authentication_plugin = mysql_native_password
- 启动服务:
bin/mysqld_safe --user=mysql &
或用 systemd 托管(需写 service 文件),但解压版默认不自带
启动后必做的几件事
解压部署完成后,不能只验证“能跑”,还要完成基础加固和可用性保障。
- Tomcat:修改默认管理页账号(
/opt/tomcat/conf/tomcat-users.xml),删掉示例用户,仅保留必要角色;关闭server.xml中的listings="true"防止目录遍历 - MySQL:首次登录后立即改密:
mysql -u root -p(输入初始化时的临时密码)→ALTER USER 'root'@'localhost' IDENTIFIED BY 'YourStrongPass123!'; - 开放防火墙端口(以 firewalld 为例):
sudo firewall-cmd --permanent --add-port=8080/tcp<br>sudo firewall-cmd --permanent --add-port=3306/tcp<br>sudo firewall-cmd --reload
- 设置开机自启(建议用 systemd):
为 Tomcat 和 MySQL 分别编写/etc/systemd/system/tomcat.service和/etc/systemd/system/mysqld.service,然后systemctl daemon-reload && systemctl enable tomcat mysqld
Java免费学习笔记:立即使用
解锁 Java 大师之旅:从入门到精通的终极指南










