mysql 之 版本升级,从5.5升级到5.7

本文涉及的产品
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS MySQL,高可用系列 2核4GB
简介:

升级mysql版本,可以通过下载官网的安装软件来实现,也可以通过按照mysql的yum源安装实现。

首先介绍一下使用安装yum源的方法(操作系统是centos6.4 64位):

1、首先到官网 http://dev.mysql.com/downloads 找到对应的reposit安装源下载包,安装这个软件包之后,就可以找到mysql对应的软件版本了,我找到的yum安装源软件包地址如下:

http://dev.mysql.com/get/mysql57-community-release-el6-8.noarch.rpm

 2、登录服务器,下载并按照这个yum源:

 wget http://dev.mysql.com/get/mysql57-community-release-el6-8.noarch.rpm

 rpm -ivh mysql57-community-release-el6-8.noarch.rpm 
    

3、查看可安装的mysql版本:
[root@host-172-10-2-83 software]# yum repolist all|grep mysql
mysql-connectors-community        MySQL Connectors Community      enabled:    21
mysql-connectors-community-source MySQL Connectors Community - So disabled
mysql-tools-community             MySQL Tools Community           enabled:    35
mysql-tools-community-source      MySQL Tools Community - Source  disabled
mysql-tools-preview               MySQL Tools Preview             disabled
mysql-tools-preview-source        MySQL Tools Preview - Source    disabled
mysql55-community                 MySQL 5.5 Community Server      disabled
mysql55-community-source          MySQL 5.5 Community Server - So disabled
mysql56-community                 MySQL 5.6 Community Server      disabled
mysql56-community-source          MySQL 5.6 Community Server - So disabled
mysql57-community                 MySQL 5.7 Community Server      enabled:    82
mysql57-community-source          MySQL 5.7 Community Server - So disabled



4、使用yum-config-manager命令启用或者禁用相应mysql的版本:

 yum-config-manager  --disable mysql57-community
 yum-config-manager  --enable mysql57-community

    例如,上面的命令分别是禁用额5.7版本,启用了5.7版本

5、直接使用yum install安装:

    yum install mysql-community-server -y


下面介绍第二种方法,就是下载安装文件的方法:


1.下载Linux的5.7版本

wget http://cdn.mysql.com//Downloads/MySQL-5.7/mysql-5.7.11-1.el6.x86_64.rpm-bundle.tar

下载完成后,解压

2.备份数据库文件

mysqldump -uxxx -pxx databasename > databasename.sql

3.停止mysql服务

service mysqld stop

4.刚开始使用的yum安装的,使用以下语句进行卸载

yum remove mysql*

5.然后删除mysql旧版本已经存在的文件或者数据,不然mysql在重新安装后会出现各种纠结的问题。

find / -name mysql
ps -ef | grep -i mysql

rm -rf mysql****
kill -9 mysqlid

注意/usr/bin、/usr/share/、/var/lib下有很多mysql开头的文件,都删除掉,还有删除/etc目录下的my.cnf文件


6.如果你是rpm安装的,可以通过以下命令进行删除

rpm -qa | grep -i name
rpm -e mysqlxxxxx

7.卸载删除干净后,再使用以下命令对下载的server、client、devel、lib进行安装

yum localinstall mysql-community-common-5.7.11-1.el6.x86_64.rpm mysql-community-client-5.7.11-1.el6.x86_64.rpm mysql-community-server-5.7.11-1.el6.x86_64.rpm mysql-community-libs-5.7.11-1.el6.x86_64.rpm  mysql-community-devel-5.7.11-1.el6.x86_64.rpm

8.安装成功后,可能会出现以下问题,那么看看下面有没有你想要的

  1. mysql error 1524

  2. error 1045(28000)

  3. error 1820

  4. 使用mysql -uroot -proot登录不了

对应的方法为:

  1. 在my.cnf文件中的[mysql]下增加“skip-grant-tables”,然后重新启动mysql服务

  2. 在my.cnf文件中的[mysql]下将“user=mysql”注释掉

  3. 该问题需要设置一下用户的密码

    mysql> create database ttt;
    ERROR 1820 (HY000): You must SET PASSWORD before executing this statement
    mysql> set password = password("root");
    Query OK, 0 rows affected (0.00 sec)
  4. mysql给你初始化了密码,在root目录下找.mysql_secret文件,注意文件隐藏形式,直接通过vim .mysql_secret就会关联到

    在我这里很奇怪,没有.mysql_secret 文件,因此只有使用下面的方法:

    先停止mysql服务: 
    service mysqld stop
    使用--skip-grant-tables忽略密码启动:
    mysqld_safe --skip-grant-tables &

    更改密码: update mysql.user set authentication_string=password('mysql') where user='root' and Host = 'localhost';

    flush privileges;

       *特别提醒注意的一点是,新版的mysql数据库下的user表中已经没有Password字段了

    而是将加密后的用户密码存储于authentication_string字段

    杀死mysqld:   killall -TERM mysqld

    启动mysqld服务:  service mysqld start

    进入mysql,5.7版本在首次登录的时候它还是要求修改密码,因此执行下面的命令:

    ALTER USER 'root'@'localhost' IDENTIFIED BY 'Mysql_123';
    flush privileges;

    注意,更改后的密码也有复杂度要求,应该是需要字母、数字、符号的组合,并且是8位以上。











本文转自yuweibing51CTO博客,原文链接:http://blog.51cto.com/yuweibing/1761351 ,如需转载请自行联系原作者





相关实践学习
如何快速连接云数据库RDS MySQL
本场景介绍如何通过阿里云数据管理服务DMS快速连接云数据库RDS MySQL,然后进行数据表的CRUD操作。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助     相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
相关文章
|
11天前
|
关系型数据库 MySQL Linux
升级到MySQL 8.4,MySQL启动报错:io_setup() failed with EAGAIN
当MySQL 8.4启动时报错“io_setup() failed with EAGAIN”时,通常是由于系统AIO资源不足所致。通过增加AIO上下文数量、调整MySQL配置、优化系统资源或升级内核版本,可以有效解决这一问题。上述解决方案详细且实用,能够帮助管理员快速定位并处理此类问题,确保数据库系统的正常运行。
51 9
|
1月前
|
关系型数据库 MySQL
mysql 5.7.x版本查看某张表、库的大小 思路方案说明
mysql 5.7.x版本查看某张表、库的大小 思路方案说明
73 5
|
1月前
|
关系型数据库 MySQL
mysql 5.7.x版本查看某张表、库的大小 思路方案说明
mysql 5.7.x版本查看某张表、库的大小 思路方案说明
44 1
|
2月前
|
Java 关系型数据库 MySQL
【编程基础知识】Eclipse连接MySQL 8.0时的JDK版本和驱动问题全解析
本文详细解析了在使用Eclipse连接MySQL 8.0时常见的JDK版本不兼容、驱动类错误和时区设置问题,并提供了清晰的解决方案。通过正确配置JDK版本、选择合适的驱动类和设置时区,确保Java应用能够顺利连接MySQL 8.0。
268 1
|
2月前
|
SQL JSON 关系型数据库
MySQL是一个广泛使用的开源关系型数据库管理系统,它有许多不同的版本
【10月更文挑战第3天】MySQL是一个广泛使用的开源关系型数据库管理系统,它有许多不同的版本
204 5
|
1月前
|
SQL 关系型数据库 MySQL
MySql5.6版本开启慢SQL功能-本次采用永久生效方式
MySql5.6版本开启慢SQL功能-本次采用永久生效方式
43 0
|
3月前
|
关系型数据库 MySQL 数据库
MySQL高级篇——MVCC多版本并发控制
什么是MVCC、快照读与当前读、隐藏字段、Undo Log版本链、ReadView、举例说明、InnoDB 解决幻读问题
|
2月前
|
监控 关系型数据库 MySQL
如何升级MySQL数据库?
【10月更文挑战第16天】如何升级MySQL数据库?
|
3月前
|
监控 关系型数据库 MySQL
如何升级mysql的版本
如何升级mysql的版本
654 2
|
3月前
|
存储 监控 关系型数据库
如何升级MySQL版本?
如何升级MySQL版本?
229 2