CentOS Linux 下mysql的升级

 

一、备份数据库,升级MySQL一般不会丢失数据,以防万一,仍是须要这一步。html

  mysqldump -uroot -p --all-databases clbs > /tmp/all.sqlmysql

二、停MySQL服务sql

service mysqld stop 停了之后能够看一下状态 service mysqld status数据库

三、卸载旧版MySQL,先查看有多少也能够vim

  rpm -qa | grep -i mysql3d

      yum remove mysql mysql-server mysql-libs compat-mysql51rest

  中间会让你进行确认  按‘Y’便可server

四、检查是否有残余的mysqlhtm

     yum list installed | grep mysqlblog

  若是存在可执行

  yum remove mysql-*

  删除以后能够在确认一下

 

五、获取想要升级的版本(我想升级的是到5.7.22)这个rpm里面还能安装8版本的

  wget http://dev.mysql.com/get/mysql80-community-release-el7-1.noarch.rpm

六、安装mysql源
  yum localinstall mysql80-community-release-el7-1.noarch.rpm

 

 七、检查mysql源是否安装成功
yum repolist enabled | grep "mysql.*-community.*"

八、选择想要安装的版本
vim /etc/yum.repos.d/mysql-community.repo

 

想要安装哪一个版本的mysql 就把哪一个版本的enabled的值设为1(默认他设置的是当前最高版本),若是修改版本别忘记把默认的值改为0

建议:最好不要跨版本升级,会出现许多问题。

九、安装MySQL
yum install mysql-community-server

中间会让你进行确认  按‘Y’便可

十、查看默认生成的登陆密码

 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

十一、登陆mysql

mysql -uroot -p

无密码就能够进去

有的会报错

mysql: [Warning] 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!');

十二、修改完以后退出

注释掉skip-grant-tables

重启服务

service mysqld restart

试试密码,若是OK!执行13;若是不行,恢复以前的注释,重启服务,修改的个简单的密码,或者执行13

1三、从新将数据导入

mysql -uroot -p < /tmp/all.sql

登陆进入看看是否是原来的数据

1四、能够用原来别的帐号登陆,或者原密码登陆。升级完成。

 

感谢前辈的分享 :

https://www.cnblogs.com/haybl/p/7898471.html

相关文章
相关标签/搜索