由于最近MySQL又被扫出漏洞,无奈只能继续往上升级,当前最新版本为8.0.20版本,由于生产环境限制,不能直接yum安装,只能源码包安装。之前装过8.0.15跟17,踩过不少坑,自认为这是小事,没想到阿,没有写博客的习惯遇到相同的问题还是想不起来当时是如何解决的,还是得抽点时间来写点博客,一来记录一下,二来让大家可以少踩点坑,好了,不废话了。
官网下载源码包
官网下载链接:https://dev.mysql.com/downloads/mysql/
如果觉得官网下载慢试试看我上传的:https://download.csdn.net/download/weixin_45773297/12531008
直接下Bundle包。
检查,卸载老的版本
由于本人装这个折腾了两天,也是第一次写博客,是安装完之后才写的,就贴不全截图了
先查看已安装的mysql:
rpm -qa | grep -i mysql
我这是安装好的8.0.20的截图
卸载之前注意如果有重要数据,请自行做好备份!
卸载之前注意如果有重要数据,请自行做好备份!
卸载之前注意如果有重要数据,请自行做好备份!
卸载:
rpm -e mysql-community-common-8.0.20-1.el6.x86_64
将上面有的都卸掉,如果因为依赖问题卸载出错的话,再加个参数:
rpm -e --nodeps mysql-community-common-8.0.20-1.el6.x86_64
我这就不贴图了,要全部卸载干净。
卸载完后,全局搜一下MySQL相关的东西:
find / -name mysql
你们卸载完后应该只有/var目录下两个记录,直接rm -rf 清理掉
然后把my.cnf清理掉(或改个后缀备份也行),这个文件在/etc/my.cof
然后再搜,还有个mysql的日志,之前试过几次不行就是因为这个日志文件没干掉,算是其中一个坑把
find / -name mysqld*
这个文件也删掉
好了,算是把老的MySQL都清理了。
解压、安装mysql
先创建文件夹(希望按我的路径来,我之前一直放在/opt下一直出问题)
mkdir /usr/loacl/mysql
cd /usr/local/mysql
将我们下载好的MySQL的tar包放进去,解压
tar -xvf mysql-8.0.20-1.el6.x86_64.rpm-bundle.tar
解压出7个rpm包,我只安装了5个。
安装(注意按顺序common,libs,libs-compat,client,server):
rpm -ivh mysql-community-common-8.0.20-1.el6.x86_64.rpm
把5个组件安装(如果由于依赖问题报错的话,看提示什么依赖就安装什么依赖,大概是zlib跟openssl的依赖,在centos的镜像里面的packges里面找一下rpm,我这就不贴了,或者跟上面卸载一样,加上–nodeps参数不检查依赖,–force强制安装)
修改配置文件
此时已经生成了my.cnf文件
vim /etc/my.cnf
加上
lower_case_table_names=1
你也可以在这里配置端口这些,我这先写关于MySQL安装的,就不写其他的了,这行配置记得是忽略大小写的,具体有没有影响没测试,先加上呗。
初始化跟启动
初始化一下
mysqld --initialize
对mysql安装路径文件夹进行mysql用户授权:
chown -R mysql:mysql /var/lib/mysql
查看一下当前mysql状态:
service mysqld status
启动mysql:
service mysqld start
这里可能有些人跟我一样有个问题,启动不起来,我这查看日志是没授权的原因
如果顺利启动的人这步略过,同样问题的授权一下:
chmod -R 777 /var/lib/mysql
然后再次启动。
登陆mysql
查看临时密码(两种方式):
一:从日志中找:
cat /var/log/mysqld.log
二:从日志中筛选:
cat /var/log/mysqld.log | grep password
我这是装完并登陆改完密码的情况,刚装完只有一行。
登陆MySQL:
mysql -u root -p
输入刚才查到的临时密码:
至此,MySQL安装登陆已完成,但还需要修改密码
修改密码
ALTER user 'root'@'localhost' identified with mysql_native_password by '123456';
将root密码改为123456
我这是举例,具体情况各位自己看着改
然后输入exit退出重新登陆,查看一下数据库,版本
好啦,到这就完了,如果先用navicat连接的话,再去找找怎么配置吧,我这有空再写了。第一次写博客,估计有点啰嗦,格式不好看,希望不要介意,也希望大佬们指点