奋斗
努力

2核4g服务器安装mysql和redis和tomcat?

云计算

在2核4GB内存的服务器上同时安装MySQL、Redis和Tomcat是可行的,但需要合理配置以避免资源竞争。以下是分步指南和优化建议:


1. 系统环境准备

  • 操作系统:推荐Ubuntu 20.04/22.04 LTS或CentOS 7/8(轻量级发行版更佳)。
  • 更新系统
    sudo apt update && sudo apt upgrade -y  # Ubuntu
    sudo yum update -y                      # CentOS

2. 安装MySQL

步骤

# Ubuntu
sudo apt install mysql-server -y
sudo systemctl start mysql
sudo systemctl enable mysql

# CentOS
sudo yum install mysql-server -y
sudo systemctl start mysqld
sudo systemctl enable mysqld

配置优化

  • 运行安全脚本:
    sudo mysql_secure_installation
  • 编辑配置文件 (/etc/mysql/my.cnf/etc/my.cnf),添加:
    [mysqld]
    innodb_buffer_pool_size = 512M  # 分配512MB内存给InnoDB(根据负载调整)
    max_connections = 50            # 限制连接数
    skip_name_resolve = ON          # 禁用DNS解析提升性能
  • 重启MySQL:
    sudo systemctl restart mysql

3. 安装Redis

步骤

# Ubuntu
sudo apt install redis-server -y

# CentOS
sudo yum install epel-release -y
sudo yum install redis -y

配置优化

  • 编辑 /etc/redis/redis.conf
    maxmemory 512mb                # 限制内存使用
    maxmemory-policy allkeys-lru   # 内存不足时淘汰旧键
    save ""                        # 禁用持久化(如需持久化,调整save规则)
  • 重启Redis:
    sudo systemctl restart redis

4. 安装Tomcat

步骤

# 安装JDK(Tomcat依赖)
sudo apt install openjdk-11-jdk -y  # Ubuntu
sudo yum install java-11-openjdk -y # CentOS

# 下载Tomcat(以10.0.x为例)
wget https://downloads.apache.org/tomcat/tomcat-10/v10.0.27/bin/apache-tomcat-10.0.27.tar.gz
tar -xzf apache-tomcat-*.tar.gz
sudo mv apache-tomcat-10.0.27 /opt/tomcat

配置优化

  • 编辑 /opt/tomcat/conf/server.xml
    <Connector port="8080" protocol="HTTP/1.1"
             maxThreads="100"           # 减少线程数
             minSpareThreads="10"
             connectionTimeout="20000" />
  • 设置环境变量(可选):
    echo 'export CATALINA_HOME="/opt/tomcat"' >> ~/.bashrc
    source ~/.bashrc
  • 启动Tomcat:
    /opt/tomcat/bin/startup.sh

5. 资源分配建议

  • MySQL:默认占用较多内存,建议预留 1.5GB
  • Redis:根据缓存需求分配 512MB~1GB
  • Tomcat:Java应用建议分配 1GB(通过JVM参数调整):
    # 在 /opt/tomcat/bin/catalina.sh 中添加
    export JAVA_OPTS="-Xms512m -Xmx1024m"
  • 系统预留:至少 512MB 给操作系统和其他进程。

6. 监控与调优

  • 监控工具
    • htop:查看实时资源占用。
    • mysqladmin status:监控MySQL状态。
    • redis-cli info:查看Redis状态。
  • 日志检查
    • MySQL错误日志:/var/log/mysql/error.log
    • Redis日志:/var/log/redis/redis.log
    • Tomcat日志:/opt/tomcat/logs/catalina.out

7. 安全加固

  • 防火墙:仅开放必要端口(如3306, 6379, 8080)。
    sudo ufw allow 22/tcp       # SSH
    sudo ufw allow 8080/tcp     # Tomcat
    sudo ufw enable
  • MySQL/Redis:设置强密码,限制远程访问(如非必需)。

常见问题

  • 内存不足:优先减少Tomcat的JVM堆大小或MySQL的缓冲池。
  • 端口冲突:确保MySQL(3306)、Redis(6379)、Tomcat(8080)端口无冲突。

通过以上配置,2核4GB服务器可以平稳运行这三个服务,但高并发场景下可能需要升级配置或分离部署。

未经允许不得转载:云服务器 » 2核4g服务器安装mysql和redis和tomcat?