阿里云CentOs7安装jdk+tomcat+mysql8.0(详解各种可能出现的问题)

一、安装JDK


1.卸载预装的openJDK

有些云服务器预装了JDK,查看是否预装命令:
rpm -qa|grep jdk
若存在,卸载。命令:
yum -y remove java java-1.8.0-openjdk
查看卸载情况:
java -version

2.安装JDK

阿里云的yum源默认是openJDK,所以需要我们自己去oracle官网找到url地址,用wget命令下载。如果直接使用wget命令的话,虽然成功了,但是应该是安装不了的,这是由于oracle在下载jdk的时候需要用户勾选接受它的协议。所以推荐选择本地下载然后上传到服务器中。

  1. 从官网下载 目前版本已经出到了jdk10,用的最广泛的是jdk1.8,选择.rmp文件下载。出于好奇的心理,我选择了jdk10。

  2. 上传到服务器

    • 进入/usr目录下新建文件 mkdir java
    • 使用rz命令上传,会弹出文件选择框,选择上传的jdk 。若使用rz命令不可用,使用yum install lrzsz安装rz sz命令,等待上传完毕。
  3. 安装

  • 进入你的安装包目录,使用命令yum install jdk-10.0.2_linux-x64_bin.rpm安装,完成后若此时使用java -version出现以下错误,执行sudo yum install glibc.i686 这个命令即可解决此问题。
jdk-bash: /usr/bin/java: /lib/ld-linux.so.2: bad ELF interpreter: No such file or directory 
  • 若此时执行java -version命令若报错,是因为Linux也需配置环境变量。执行vim/etc/profile,打开环境变量配置文件,在文件底部输入以下信息,并保存。
# java
JAVA_HOME=/usr/java/jdk-10.0.2
JRE_HOME=$JAVA_HOME/jre
PATH=PATH=$PATH:$JAVA_HOME/bin
CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export JAVA_HOME
export JRE_HOME
export PATH
export CLASSPATH

执行java -version命令,出现

java version "10.0.2" 2018-07-17
Java(TM) SE Runtime Environment 18.3 (build 10.0.2+13)
Java HotSpot(TM) 64-Bit Server VM 18.3 (build 10.0.2+13, mixed mode)

安装成功

二、安装tomcat


步骤和安装JDK一样

  1. 下载Tomcat到本地,我仍然选择了最新版本Tomcat9.0.11。然后上传至usr/tomcat,在该目录下解压tar -zxf apache-tomcat-9.0.11.tar.gz
  2. 执行./apache-tomcat-9.0.11/bin/startup.sh命令,若如下,安装成功
Using CATALINA_BASE:   /usr/tomcat9/apache-tomcat-9.0.11
Using CATALINA_HOME:   /usr/tomcat9/apache-tomcat-9.0.11
Using CATALINA_TMPDIR: /usr/tomcat9/apache-tomcat-9.0.11/temp
Using JRE_HOME:        /usr
Using CLASSPATH:       /usr/tomcat9/apache-tomcat-9.0.11/bin/bootstrap.jar:/usr/tomcat9/apache-tomcat-9.0.11/bin/tomcat-juli.jar
Tomcat started.
  1. 启动tomcat后,我们还需测试是否能从外网访问,在本地浏览器中输入公网ip:8080,如果访问失败,是因为阿里云需要配置安全组开放8080端口。解决方案为:去云服务器管理控制台添加安全组规则,详情参考阿里云安全组规则配置及Tomcat外网访问。配置完毕后即可从本地访问服务器tomcat

三、安装mysql


网上大多数教程都是安装mysql5.6和5.7,但是mysql8.0已经问世,并且在性能上有着很大提升,详情见关于MySQL 8.0的几个重点,都在这里,所以选择安装mysql8.0。

  1. 检查是否已安装过mysql其它版本 。命令:rpm -qa | grep mysql。有则删掉,例如:命令yum -y remove mysql-community-client-5.6.38-2.el7.x86_64
  2. 检查centos是否自带mariadb,有则删掉,命令同上类似。
  3. 因为centos的yum 源中默认是没有mysql的,所以使用wget命令下载rpm包,命令:
wget https://dev.mysql.com/get/mysql-community-server-8.0.12-1.el7.x86_64.rpm

4.进入rpm包目录,使用命令yum install mysql-community-server-8.0.12-1.el7.x86_64.rpm,然后你会发现安装出错,显示缺少common和client包,这是因为mysql5.7版本以前只安装mysql-server和mysql-client两个rpm包即可。从mysql5.7版本之后mysql-community-client依赖于mysql-community-libsmysql-community-server依赖于mysql-community-common共计需要安装4个rpm包。所以使用wget命令依次下载这三个rpm包到目录。具体为

mysql-community-client-8.0.12-1.el7.x86_64.rpm  mysql-community-libs-8.0.12-1.el7.x86_64.rpm
mysql-community-common-8.0.12-1.el7.x86_64.rpm  
  1. 按照lib-client -common-server的顺序依次安装。如果安装client包过程中出现mariadb存在而导出出错,使用命令rpm -pa | grep mariadb命令,可能出现以下类似的信息
mariadb-libs-5.5.56-2.el7.x86_64

使用rpm -e mariadb-libs-5.5.56-2.el7.x86_64删掉,重新安装client包。

  1. 安装成功后,我们需要修改mysql初始密码。首先执行命令systemctl start mysqld.service开启mysql服务。随后我们执行命令grep 'temporary password' /var/log/mysqld.log 查看初始密码。然后登陆mysql 命令mysql -u root -p,登陆后执行修改密码的命令
alter user 'root'@'localhost' identified by '123456'

会出现以下报错

ERROR 1819 (HY000): Your password does not satisfy the current policy requirements

这是因为mysql对密码等级和规则有限制,解决办法有两个,第一修改密码比如Admin_001.,第二调整MySQL密码验证规则,修改 policy 和 length 的值。经过查资料,网上大部分的方法如下

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

在mysql5.7中好使,mysql8.0中却行不通,在mysql8.0中validate_password_policyvalidate_password_length 变量不存在。取而替代的validate_password.policyvalidate_password.length。详情和解决方法见博文:解决MySQL8.0报错:Unknown system variable 'validate_password_policy'。了解原由后执行命令

mysql> set global validate_password.policy=0;
mysql> set global validate_password.length=1;

再重新设置密码

  1. 重置密码后,我们需要从远程登录mysql,首先在阿里云控制台添加安全组,开放3306端口,详情见tomcat配置。然后连接,会出现类似以下的错误
ERROR 1103: Host *.*.*.* is not allowed to connect to

这是由于mysql服务端root用户所对应的客户端权限设置问题。默认所对应的客户端地址只有localhost(也就是服务端的机器),所以要增加相应的地址。此处,我们增加任何地址都可以访问mysql服务端的root用户。具体sql语句为:

mysql -u root –p  
mysql>use mysql;  
mysql>update user set host = '%' where user = 'root';  

修改完毕后再尝试登陆,可能会出现以下错误:

错误码:1251 - Client does not support authentication protocol requested by server...

原因是mysql8 之前的版本中加密规则是mysql_native_password,而在mysql8之后,加密规则是caching_sha2_password,解决问题方法有两种,一种是升级navicat驱动,一种是把mysql用户登录密码加密规则还原成mysql_native_password。详情见博文
Navicat连接Mysql8.0.11出现1251错误

四、总结


过程并不顺利,特别是mysql8.0,8.0和之前的版本还是有较大的改动的,不过通过一次次的查找资料总算成功的配置成功。且行且珍惜

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 158,425评论 4 361
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 67,058评论 1 291
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 108,186评论 0 243
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 43,848评论 0 204
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 52,249评论 3 286
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 40,554评论 1 216
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 31,830评论 2 312
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 30,536评论 0 197
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 34,239评论 1 241
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 30,505评论 2 244
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 32,004评论 1 258
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 28,346评论 2 253
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 32,999评论 3 235
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 26,060评论 0 8
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 26,821评论 0 194
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 35,574评论 2 271
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 35,480评论 2 267

推荐阅读更多精彩内容