操作前建议先查阅以下网页初步了解Mysql版本升级信息
https://blog.csdn.net/u012946310/article/details/81880050
一、查看环境信息
cat /etc/redhat-release
mysql -V
二、备份数据库 (-A 参数是备份全部数据库的数据和结构)
mysqldump -uroot -p123456 -A > /opt/databackup.sql //用户名是root 密码是123456 备份到/opt目录下命名为databackup.sql
卸载旧版数据库
rpm -qa|grep mysql //查看系统有哪些包
rpm -e --nodeps mysql-community-common-5.7.20-1.el6.x86_64 //使用RPM 方式卸载掉所显示的包
检查结果如上图,查看不到任何mysql的包文件。便可开始安装新版本mysql
安装新版mysql
安装前准备工作
新建目录、上传YUM包密码: i857
把安装文件上传上去
查看并进入目录
执行安装
等待安装全部文件结束后执行更新
mysql_upgrade -u root -p //检查兼容更新
重点信息插入(mysql8.0q第一次服务启动前一定要把不区分大小写设置好,血的教训啊~~就这坑掉进去超过三次)
设置数据库不区分大小写
在 [mysqld] 的下一行添加内容 “lower_case_table_names=1”
service mysqld start //启动服务
升级完毕
启动项目后发现问题来了 -_-
*这时候发现项目启动还不成功,因为现在只是升级数据库,项目更数据库相关的文件都需要一起升级才行
分三步走
首先 重启数据库
service mysqld restart
其次 替换tomcat驱动包密码: cxch
替换方法:
前往这个路径/root/apache-tomcat-6.0.53-license/webapps/network/WEB-INF/lib
(红色部分为项目路径,不固定具体根据真实环境来修改)
找到 mysql-connector-java-5.1.18.jar把它删掉
换成 mysql-connector-java-8.0.14.jar
再次修改数据库连接文件信息
1从mysql8.0开始更注重安全性,数据库连接信息不能写localhost和127.0.0.1
2从mysql8.0升级了加密方式,会导致旧版本用户登录不上去
综合以上要求来对连接文件进行修改
找到数据库连接文件 路径位于 /项目/webapps/network/WEB-INF/classes
下面有一个名为 : application.development的文件打开编辑它
在第三行找到 “network?”把后面替换成以下内容network?useSSL=false&useUnicode=true&characterEncoding=UTF-8&autoReconnect=true&failOverReadOnly=false
检查这一行内容是否存在 localhost和127.0.0.1 信息,如有存在必须修改成对应的IP信息。
修改前后对比
完成以上操作运行tomcat项目就可以正常运行了。