Linux基础3:CentOS7安装配置JDK、Mysql 和Tomcat服务器环境

前言:推荐使用yum指令自动安装JDK、Tomcat以及MariaDB数据库(Mysql的分支),它可以让你免受配置各种环境变量之苦,安装完直接就可以用,无需配置。

开发环境:Centos7.7 mininal

安装版本:JDK1.8+Mysql 5.7+Tomcat 8.5

一、Centos7下使用yum源安装JDK

Centos7中安装Java环境,在安装前先查看有无安装过Java环境。直接运行java 命令,会提示命令未找到,则是没有安装过java环境。

1.查看yum源的java包

yum list java*

2.安装jdk1.8

yum -y install java-1.8.0-openjdk


安装完成后会在最下面显示完成

3.查看版本,检测安装是否成功

java -version

若出现上述提示表示JDK已经成功安装啦!


二、Centos7下使用yum源安装Mysql5.7

现在CentOS上默认是没有Mysql的yum源,yum源默认的是 MariaDB。所以我们需要自己先配置Mysql yum源。

MariaDB闲谈:

MariaDB数据库管理系统是MySQL的一个分支,主要由开源社区在维护,采用GPL授权许可。开发这个分支的原因是:自从Sun被Oracle收购以后,原来Sun旗下的MySQL的所有权也落入Oracle的手中。MySQL未来存在闭源的潜在风险,因此社区采用分支的方式来避开这个风险。MariaDB的目的是完全兼容MySQL,包括API和命令行,使之能轻松成为MySQL的代替品。

过去一年中,大型互联网用户以及Linux发行商纷纷抛弃MySQL,转投MariaDB阵营。MariaDB是MySQL的创始人Michael Widenius另起炉灶开发了完全兼容MySQL的数据库系统。它是目前最受关注的MySQL数据库衍生版,也被视为开源数据库MySQL的替代品。Centos7的发行版默认就包含了MariaDB。

1、更换yum源安装Mysql5.7

a、下载并安装MySQL官方的 Yum Repository

wget -i -c http://dev.mysql.com/get/mysql57-community-release-el7-10.noarch.rpm

rpm -Uvh mysql57-community-release-el7-11.noarch.rpm

执行完成后会在/etc/yum.repos.d/目录下生成两个repo文件mysql-community.repo mysql-community-source.repo

b、查看有哪些版本的mysql

yum repolist all | grep mysql

c.yum安装Mysql

我默认使用安装mysql5.7

yum install -y mysql-community-server

至此MySQL就安装完成了

2.启动Mysql,验证是否安装成功

要知道在centos7中,没有了service命令,都是使用systemctl命令。(centos6中,使用service mysqld start)

systemctl start mysqld  注意启动的时候是start mysqld而不是mysql。
systemctl status mysqld  查看Mysql运行状态

如图所示已经启动Mysql了,接下来会进行Mysql相关配置。

3.MySQL数据库的配置

3.1、登录数据库,修改数据库密码

mysql5.7的新特性之一就是在初始化的时候会生成一个自定义的随机密码,然后你需要找到这个临时密码,登录的时候输入。注意,输入密码的时候是不显示。

a、启动Mysql

systemctl start mysqld

b、找到密码: 红框的地方就是密码

grep 'temporary password' /var/log/mysqld.log

c、找到了密码之后,输入以下指令进入数据库

mysql -u root -p

此时不能做任何事情,因为MySQL默认必须修改密码之后才能操作数据库。

d、修改密码

#这里的'new password'即为你自己要更改的密码。

ALTER USER 'root'@'localhost' IDENTIFIED BY 'new password';

这里有个问题,新密码设置的时候如果设置的过于简单会报错。 原因是因为MySQL有密码设置的规范,具体是与validate_password_policy的值有关。

此时,通过进行这两个操作即可.(设置密码的验证强度等级为弱)

set global validate_password_policy=0;  
set global validate_password_length=1;

然后在进行密码的设置,就成功了.

上面提到Mysql密码设置规范的validate_password_policy,详细请参考:安装MySQL报错 : Your password does not satisfy the current policy requirements

3.2、设置Mysql支持远程连接

Mysql为了安全性,在默认情况下用户只允许在本地登录,可是在有此情况下,还是需要使用用户进行远程连接。比如我的VMware的CentOS7中安装的MySQL需要支持远程连接方便数据库备份,现在这样是无法在本地用工具比如Navicat for Mysql登录访问的。

MySQL默认是没有开启远程控制的,必须添加远程访问的用户,即默认是只能自己访问,别的机器是访问不了的。现在要做两件事,第一件事是将云服务器上的3306端口开放;另一件事是配置Mysql远程可以访问。

①先设置刚才的密码可以远程登录,然后使用flush命令使配置立即生效。

#允许root用户在任何地方进行远程登录,并具有所有库任何操作权限

GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'Admin123!' WITH GRANT OPTION; 

#重载授权表
flush privileges; 

②云服务器开放3306端口

Mysql默认监听端口就是3306

firewall-cmd --zone=public --add-port=3306/tcp --permanent
firewall-cmd --reload  

注意:如果还不行可以尝试重启一下数据库

 这时,在本地电脑的navicat 上的连接远程的MySQL,显示连接成功:

参考链接:Centos7下无法远程连接mysql数据库的原因与解决

3.3.Mysql其他简单配置

Mysql的配置文件真的很多,有的还很蛋疼。比如默认的字符集是拉丁字符集,每次创建数据库的时候要设置字符集;默认还不支持group by语句,默认的时区也不是我们现在的北京时间(东八区),会导致我们的时间差了13个点。针对以上说几个简要的配置,更多的配置在以后遇到了再加上。

先输入exit退出数据库客户端。
打开配置文件,yum安装的默认在/etc文件夹下:
vim /etc/my.cnf

在[mysqld]下面添加,不需要分号

字符集:注意是utf8而不是utf-8!

character-set-server=utf8

这时候使用show variables like 'char%';就可以查看到字符集都是utf8了

sql支持group by语句

sql_mode=STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION

设置时区为东八区

default-time_zone = '+8:00'

a、设置安全选项:

mysql_secure_installation
b、关闭MySQL

systemctl stop mysqld
c、重启MySQL

systemctl restart mysqld
d、查看MySQL运行状态

systemctl status mysqld
e、设置开机启动

systemctl enable mysqld
f、关闭开机启动

systemctl disable mysqld
g、配置默认编码为utf8:

vi /etc/my.cnf #添加 [mysqld] character_set_server=utf8 init_connect='SET NAMES utf8'

其他默认配置文件路径:

配置文件:/etc/my.cnf 日志文件:/var/log//var/log/mysqld.log 服务启动脚本:/usr/lib/systemd/system/mysqld.service socket文件:/var/run/mysqld/mysqld.pid
h、查看版本

select version();

最后重启数据库,使配置生效

systemctl restart mysqld


三、Tomcat8.5的安装

1.首先需要下载tomcat8.5的安装文件,下载后缀为tar.gz的版本

Tomcat下载地址:https://tomcat.apache.org/download-80.cgi

2、然后需要将下载的压缩文件上传至服务器,可以用rz命令来上传(输入后选择本地文件上传).若输入后显示


则需要先在远程CentOS服务器中,yum -y install lrzsz ,安装后使用.

选择刚刚下载的安装包上传

3、接着对上传的压缩包进行解压

tar -zxvf apache-tomcat-8.5.45.tar.gz

4、Tomcat解压完就可以运行
解压完成后,进入刚刚解压的文件夹,可打开Tomcat。

cd apache-tomcat-8.5.45/bin
./startup.sh

5、如果是租的阿里云服务器

需要开发阿里云安全组规则的8080端口:阿里云服务器Tomcat无法通过客户端http访问

6、浏览器打开:http://192.168.0.8:8080  出现以下界面说明成功

万一不能访问到如下界面,请参考链接:Centos7 可以启动tomcat但无法访问的问题


注意补充1:上面的Tomcat8.5采用的是XShell本地上传安装包到远程CentOS解压运行,其实可以用更简单的方法,往下看

1、先到tomcat官网https://tomcat.apache.org/查看下载路径

 我下载的tomcat-8.5.37 如: https://mirrors.tuna.tsinghua.edu.cn/apache/tomcat/tomcat-8/v8.5.27/bin/

2、安装wget,并让wget下载Tomcat安装包,后面步骤同上解压运行Tomcat即可

yum install -y wget

wget http://mirrors.shu.edu.cn/apache/tomcat/tomcat-8/v8.5.37/bin/apache-tomcat-8.5.37.tar.gz

注意补充2:阿里云Ubuntu下安装JDK1.8

1、java   

列出可供安装的JDK

2、sudo apt-get update

更新apt的阿里云下载镜像

3、apt install openjdk-8-jre-headless

安装openjdk1.8

4、java -version

验证安装是否成功即可

参考链接:

CentOS7下安装Java、MySQL、Tomcat

CentOS 7 yum安装与配置 Tomcat

Centos安装Tomcat8.5的最优姿势

猜你喜欢

转载自blog.csdn.net/CSDN2497242041/article/details/106872336