阿里云上安装JDK、Tomcat、Mysql
一、下载xshell+xftp,或者下载SecureCRTPortabl + SecureFXPortable。连接自己的服务器。

下载jdk[https://www.oracle.com/java/technologies/javase/javase-jdk8-downloads.html]
二、下载JDK
1、下载地址:https://www.oracle.com/java/technologies/javase/javase-jdk8-downloads.html

下载到本到后,上传此压缩包到个人服务器。
现在下载JDK需要登录账号,这里提供一个账号地址:
https://blog.csdn.net/weixin_39917347/article/details/81707106
2、配置目录
在自己服务器中,新建一个目录,用来存放所有软件的压缩文件。
cd /usr
mkdir software
mkdir jdk 用来存放jdk
然后在usr下建立java目录,在创建java子目录jdk来存放jdk安装地址。
mkdir java
cd java
mkdir jdk
然后解压jdk的tar文件到上面的目录:
tar zxvf jdk-8u241-linux-x64.tar.gz -C /usr/java/jdk/

3、配置环境变量
vi /etc/profile
按Insert或者I键,切换成编辑模式。找到内容末尾,输入下面一段话。

export JAVA_HOME=/usr/java/jdk/jdk1.8.0_241
export JRE_HOME=${JAVA_HOME}/jre
export CLASSPATH=.:$JAVA_HOME/lib:$JRE_HOME/lib:$CLASSPATH
export PATH=$JAVA_HOME/bin:$JRE_HOME/bin:$JAVA_HOME:$PATH
JAVA_HOME的路径是你实际解压后的JDK的路径。
按Esc退出编辑模式,输入:wq保存并退出
4、生效环境变量
对于/etc/profile编写完成之后是不够的,还需要最后一个步骤,就是让刚刚我们修改的文件变成有效起来,所以我们再输入一个命令,让修改生效。
source /etc/profile
5、验证
java -version

三、安装tomcat
下载地址:https://tomcat.apache.org/download-80.cgi
我下载的是apache-tomcat-8.5.51
在之前建立的software目录下创建文件夹tomcat,将压缩包放入该目录
cd /usr/software
mkdir tomcat
执行命令进行解压
cd /usr/software/tomcat
tar zxvf apache-tomcat-8.5.51.tar.gz -C /usr/java/tomcat/
进入bin目录,启动
./startup.sh

然后去阿里云将8080端口放开





在弹出窗口中输入内容,比如添加8080端口,就在端口范围里输入以8080/8080,在授权对象里输入“0.0.0.0/0”意思是允许所有访问。

点击确定后看看自己的安全组规则中是否多了一个8080的端口,就设置成功了。

./shutdown.sh

四、安装mysql
1、下载地址:https://downloads.mysql.com/archives/community/

在software创建mysql5.7.28目录,将压缩包放入其中。
mkdir mysql5.7.28
2、删除mariadb
因为CentOS7默认安装mariadb数据库,mysql和它会有冲突,先把它删掉就好了,使用命令:
rpm -qa | grep mariadb 查看当前centos系统中是否已存在mariadb数据库
rpm -e --nodeps mariadb-libs-5.5.56-2.el7.x86_64 (从上一步查看的mariadb全包名) 删除mariadb数据库以及依赖包
再次执行查询命令,查看是否删除
rpm -qa | grep mariadb
进入目录,将mysql压缩包解压并改名
cd /usr/software/mysql5.7.28/
tar -zxvf mysql-5.7.28-linux-glibc2.12-x86_64.tar.gz -C /usr/java/
mv mysql-5.7.28-linux-glibc2.12-x86_64/ mysql-5.7.28 改名
3、创建数据文件夹data
data文件夹是mysql用来存放数据库文件的,数据库的表数据都放在data目录。默认没有data目录,需要手动创建data目录。

在mysql5.7.28目录下创建data文件夹。

4、创建mysql用户
创建mysql用户,用来执行MySQL的命令mysqld,此命令用来初始化mysql基础信息,也可以使用其他用户,例如mydb,但是不推荐。
useradd mysql
5、初始化mysql
使用mysql的mysqld命令初始化数据库的基本信息,切换到mysql5.7.28/bin目录下执行,命令:
./mysqld --initialize --user=mysql --datadir=/usr/java/mysql-5.7.28/data --basedir=/usr/java/mysql-5.7.28/
执行完这行命令可能会出现问题

./mysqld: error while loading shared libraries: libaio.so.1: cannot open shared object file: No such file or directory
出现该问题首先检查该链接库文件有没有安装使用,命令进行核查
[root@izm5eeq7orgtvuxpgma2f4z bin]# rpm -qa|grep libaio
[root@izm5eeq7orgtvuxpgma2f4z bin]#
运行命令后发现系统中没有libaio,进行安装
yum install libaio-devel.x86_64
安装完成之后,继续使用上面那条命令
./mysqld --initialize --user=mysql --datadir=/usr/java/mysql-5.7.28/data --basedir=/usr/java/mysql-5.7.28/

记录日志最末尾位置root@localhost:后的字符串,此字符串为mysql管理员临时登录密码。(红框里面:qgKX.x?4VNU-)
6、修改mysql安装目录权限
chown -R mysql:mysql /usr/java/mysql-5.7.28/
启动mysql
./mysqld_safe &
指定配置文件启动(这个配置文件是我手动创建的)
./mysqld_safe --defaults-file=/etc/my.cnf &
配置文件内容
[mysqld]
#是否对sql语句大小写敏感,1表示不敏感
lower_case_table_names = 1
具体可以参考:https://blog.csdn.net/djcode/article/details/78621772

ps -ef | grep mysql 查看进程

使用mysql客户端进入mysql
登录进入mysql,mysql-5.7.28/bin目录下执行命令, ./mysql -uroot -p
-u 表示使用root用户登录系统,使用第五步生成的密码。
-p 表示使用密码登录

我们来使用命令来验证一下
CREATE DATABASE test_db;

意思是:在执行此语句之前,必须使用ALTER USER语句重置密码。
修改密码
alter user 'root'@'localhost' identified by '密码';
然后进行验证

授权远程访问
我们现在使用Navicat连接:访问失败

在没有授权之前只能在本机访问mysql,远程授权就是让其他计算机通过网络访问mysql。
授权命令:grant
语法:
grant all privileges on *.* to root@'%' identified by '密码',%也可以指定具体的ip的地址,比如grant all privileges on *.* to root@47.105.198.54 identified by '密码',
其中*.*的第一个表示所有数据库名,第二个*表示的数据库表。
root@'%'中的root表示用户名,%表示ip地址。
cd /usr/java/mysql-5.7.28/bin/
./mysql -uroot -p 登录
grant all privileges on *.* to root@'%' identified by '密码';
flush privileges; 刷新
到此我们还需要去阿里云放开端口3306.


可能有些伙伴可能有疑问,为什么我的/ect下面没有my.cnf,那是因为
官网说:从5.7.18开始不在二进制包中提供my-default.cnf文件。参考:https://dev.mysql.com/doc/refman/5.7/en/binary-installation.html
退出客户端
exit