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

相關文章
相關標籤/搜索