本篇主要讲解 JDK、Tomcat、MySQL 和 Redis 在 Linux 下的安装方法,注重实用性,每个部分之间没有太大关系。这里 Linux 选择 CentOS 7.2,通过 SSH 进行远程操作,本地环境如果是 Windows 可以尝试安装 SSH 客户端 Xshell,如果是 Mac 直接使用自带的终端工具即可。
1. jdk安装
1.1 open jdk安装
$ yum list installed | grep java # 查看自带jdk是否已安装
$ yum -y remove java-1.7.0-openjdk* # 卸载系统自带mysql数据库,若有多个依赖文件则依次卸载
$ yum -y remove tzdata-java.noarch
$ yum -y list java* # 查看yum库上的mysql版本信息
$ yum -y install java-1.8.0-openjdk*
$ java -version
1.2 oracle jdk安装
oracle jdk 奇数版本为 bug 修正并全部通过检验的版本,偶数版本包含了奇数版本所有的内容,以及未被验证的 bug 修复。
$ wget -P /usr/local https://repo.huaweicloud.com/java/jdk/8u202-b08/jdk-8u202-linux-x64.tar.gz
$ tar -zxvf /usr/local/jdk-8u202-linux-x64.tar.gz -C /usr/local
$ vim /etc/profile # 添加环境变量
在文件末尾添加配置:
export JAVA_HOME=/usr/local/jdk1.8.0_202
export MAVEN_HOME=/usr/local/apache-maven-3.6.3
export GRADLE_HOME=/usr/local/gradle-4.10.3
export PATH=$JAVA_HOME/bin:${MAVEN_HOME}/bin:$GRADLE_HOME/bin:$PATH
$ source /etc/profile
$ java -version
2. Tomcat安装
$ wget -P /usr/local https://repo.huaweicloud.com/apache/tomcat/tomcat-8/v8.5.71/bin/apache-tomcat-8.5.71.tar.gz
$ tar -zxvf /usr/local/apache-tomcat-8.5.71.tar.gz -C /usr/local
Tomcat 默认部署项目的路径是 /usr/local/tomcat/webapps/
$ sh /usr/local/apache-tomcat-8.5.71/bin/startup.sh # 启动Tomcat
$ sh /usr/local/apache-tomcat-8.5.71/bin/shutdown.sh # 停止Tomcat
Tomcat 爬过的第一个坑,Tomcat 下允许访问软链接的设置,编辑 conf/context.xml,Context 节点下添加:
<!-- Tomcat设置支持软连接 -->
<Resources allowLinking="true"/>
Tomcat 爬过的第二个坑,CentOS 7 下 Tomcat 启动巨慢的原因及解决方案:
$ yum -y install rng-tools # 安装rngd服务(熵服务,增大熵池)
$ systemctl start rngd # 启动服务
$ systemctl enable rngd # 设置开机自启动
3. MySQL 5.7安装
$ yum list installed | grep mysql # 查看自带mysql是否已安装
$ yum -y remove mysql-libs.x86_64 # 卸载系统自带mysql数据库,若有多个依赖文件则依次卸载
$ yum -y install https://repo.mysql.com/mysql57-community-release-el7-11.noarch.rpm
$ yum -y list mysql* # 查看yum库上的mysql版本信息
$ yum -y install mysql-server mysql mysql-devel # 安装mysql
配置默认编码为 utf8mb4:
$ vim /etc/my.cnf # 在[mysqld]下添加编码配置
[mysqld]
character_set_server=utf8mb4
init_connect='SET NAMES utf8mb4'
$ service mysqld start # 启动mysql
$ service mysqld restart # 重启MySQL
$ systemctl status mysqld # 查看mysql的启动状态
$ systemctl enable mysqld # 设置开机自启动
$ systemctl daemon-reload
MySQL 安装完成之后,会在 /var/log/mysqld.log 文件中给 root 生成了一个默认密码,我们需要找到 root 默认密码,然后登录 mysql 进行修改:
$ grep 'temporary password' /var/log/mysqld.log
[Note] A temporary password is generated for root@localhost: +i:q-r<::0gI
$ mysql -u root -p # 输入生成的默认密码
mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY 'new password'; # 修改root密码
MySQL5.7 默认安装了密码安全检查插件,默认密码检查策略要求密码必须包含:大小写字母、数字和特殊符号,并且长度不能少于8位。
mysql> GRANT ALL PRIVILEGES ON *.* TO 'user'@'%' IDENTIFIED BY 'password' WITH GRANT OPTION; # 添加mysql用户并授权远程登录
MySQL 默认配置文件路径分别如下:
配置文件:/etc/my.cnf
日志文件:/var/log/ 和 /var/log/mysqld.log
服务启动脚本:/usr/lib/systemd/system/mysqld.service
socket文件:/var/run/mysqld/mysqld.pid
4. Redis 5安装
# 安装epel源
$ yum -y install epel-release
$ yum -y install https://repo.ius.io/ius-release-el7.rpm https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
$ yum search redis
$ yum info redis5.x86_64
$ yum -y install redis5.x86_64 # 安装
$ systemctl start redis # 启动
$ systemctl stop redis # 停止
$ systemctl enable redis # 开机启动