CentOS Linux 下mysql的升级
1、备份数据库,升级MySQL通常不会丢失数据,以防万一,还是需要这一步。
mysqldump -uroot -p --all-databases clbs > /tmp/all.sql
2、停MySQL服务
service mysqld stop 停了以后可以看一下状态 service mysqld status
3、卸载旧版MySQL,先查看有多少也可以
rpm -qa | grep -i mysql
yum remove mysql mysql-server mysql-libs compat-mysql51
中间会让你进行确认 按‘Y’即可
4、检查是否有残余的mysql
yum list installed | grep mysql
如果存在可执行
yum remove mysql-*
删除之后可以在确认一下
5、获取想要升级的版本(我想升级的是到5.7.22)这个rpm里面还能安装8版本的
wget http://dev.mysql.com/get/mysql80-community-release-el7-1.noarch.rpm
6、安装mysql源
yum localinstall mysql80-community-release-el7-1.noarch.rpm
7、检查mysql源是否安装成功
yum repolist enabled | grep "mysql.*-community.*"
8、选择想要安装的版本
vim /etc/yum.repos.d/mysql-community.repo
想要安装哪个版本的mysql 就把哪个版本的enabled的值设为1(默认他设置的是当前最高版本),如果修改版本别忘记把默认的值改成0
建议:最好不要跨版本升级,会出现许多问题。
9、安装MySQL
yum install mysql-community-server
中间会让你进行确认 按‘Y’即可
10、查看默认生成的登录密码
grep 'temporary password' /var/log/mysqld.log
A temporary password is generated for root@localhost: rH>4ahlow3.d
如果密码不管用或者没有密码
那么就
vim /etc/my.cnf
在配置文件配置
skip-grant-tables
配置之后重启服务才会生效
service mysqld restart
11、登录mysql
mysql -uroot -p
无密码就可以进去
有的会报错
mysql: [Waing] Using a password on the command line interface can be insecure.
ERROR 1040 (HY000): Too many connections
重启一下服务即可
可以修改密码
ALTER USER 'root'@'localhost' IDENTIFIED BY '111111!'; 或者 set password for 'root'@'localhost'=password('111111!');
12、修改完之后退出
注释掉skip-grant-tables
重启服务
service mysqld restart
试试密码,如果OK!执行13;如果不行,恢复之前的注释,重启服务,修改的个简单的密码,或者执行13
13、重新将数据导入
mysql -uroot -p < /tmp/all.sql
登录进入看看是不是原来的数据
14、可以用原来别的账号登录,或者原密码登录。升级完成。
感谢前辈的分享 :
https://www.cnblogs.com/haybl/p/7898471.html
作者:lookqiao
来源链接:https://www.cnblogs.com/7426QS/p/9116356.html
版权声明:
1、JavaClub(https://www.javaclub.cn)以学习交流为目的,由作者投稿、网友推荐和小编整理收藏优秀的IT技术及相关内容,包括但不限于文字、图片、音频、视频、软件、程序等,其均来自互联网,本站不享有版权,版权归原作者所有。
2、本站提供的内容仅用于个人学习、研究或欣赏,以及其他非商业性或非盈利性用途,但同时应遵守著作权法及其他相关法律的规定,不得侵犯相关权利人及本网站的合法权利。
3、本网站内容原作者如不愿意在本网站刊登内容,请及时通知本站(javaclubcn@163.com),我们将第一时间核实后及时予以删除。