1.支持的升级方式

原地升级(In-Place Upgrade):直接替换二进制文件(即直接yum update/rpm -Uvh升级rpm包)数据库目录等都不变。

逻辑升级(Logical Upgrade):先用mysqldump导出数据库--替换二进制文件--重新导入数据库。

2.支持升级路径

小版本升级,如5.7.9--5.7.10

版本升级,如5.6--5.7

跨版本升级,如5.1--5.5--5.6

说明:只支持一次升一个版本不支持直5.1--5.6等直接跨版本。

3.原地升级数据库

下边我们以原地升级方式将5.1板本升级至5.5版本为例

3.1备份数据库

mysqldump -u root -p --add-drop-table --routines --events --all-databases --force > data-for-upgrade.sql

3.2设置参数使数据库关闭时会清空缓存避免版本间缓存格式差异

mysql -u root -p --execute="SET GLOBAL innodb_fast_shutdown=0"

3.3关闭数据库

mysqladmin -u root -p shutdown

3.4升级安装包

[root@ls Desktop]# rpm -qa | grep -i mysql           #查看当前安装的相关包
mysql-devel-5.1.-.el6_8.x86_64
mysql-5.1.-.el6_8.x86_64
perl-DBD-MySQL-4.013-.el6.x86_64
mysql-libs-5.1.-.el6_8.x86_64
mysql-server-5.1.-.el6_8.x86_64 [root@ls Desktop]# rpm -e mysql-server #mysql-server包拒绝直接升级所以要先卸载其他包可以不管 [root@ls mysql]# tar -xf MySQL-5.5.-.el6.x86_64.rpm-bundle.tar [root@ls mysql]# ls
MySQL-client-5.5.-.el6.x86_64.rpm
MySQL-devel-5.5.-.el6.x86_64.rpm
MySQL-embedded-5.5.-.el6.x86_64.rpm
MySQL-server-5.5.-.el6.x86_64.rpm
MySQL-shared-5.5.-.el6.x86_64.rpm
MySQL-shared-compat-5.5.-.el6.x86_64.rpm
MySQL-test-5.5.-.el6.x86_64.rpm [root@ls mysql]# rpm -Uvh *                           #为了省去麻烦直接全部安装 [root@ls mysql]# rpm -qa|grep -i mysql
MySQL-client-5.5.-.el6.x86_64
MySQL-shared-compat-5.5.-.el6.x86_64
MySQL-embedded-5.5.-.el6.x86_64
perl-DBD-MySQL-4.013-.el6.x86_64
MySQL-test-5.5.-.el6.x86_64
MySQL-server-5.5.-.el6.x86_64
MySQL-shared-5.5.-.el6.x86_64
MySQL-devel-5.5.-.el6.x86_64
[root@ls mysql]#

3.5启动数据库

mysqld_safe --user=mysql --datadir=/mysql/data       #mysqld_safe 是官方推荐的启动方式user为启动的系统用户datadir为数据库文件所在目录

3.6升级数据库(该操作会将旧版的系统数据库数据表转成当前版本的模样)

mysql_upgrade -u root -p                             #u是登录数据库用户

3.7为确保所有更新生效官方建议再次重启数据库

mysqladmin -u root -p shutdown
service mysql start

参考:

http://www.linuxidc.com/Linux/2016-08/134342.htm

https://dev.mysql.com/doc/refman/5.7/en/upgrading.html

MySQL升级教程(CentOS)的更多相关文章

  1. CentOS下Mysql安装教程

    CentOS下Mysql安装教程 本人学习Linux时使用的是CentOs5.5版本,在该环境中,Mysql的安装方法有很多种,下面我只讲我这次成功了的方法,作为一个记录,供大家参考,同时给自己做一个 ...

  2. Windows之MySQL安装教程

    MySQL安装说明 MySQL是一个关系型数据库管理系统,由瑞典MySQL AB 公司开发,目前属于 Oracle 旗下产品.MySQL 是最流行的关系型数据库管理系统之一,在 WEB 应用方面,My ...

  3. Docker系列之MySQL安装教程

    Docker系列之MySQL安装教程 有了前面的基础教程Docker系列之常用命令操作手册之后,本博客记录一篇mysql的安装教程 mysql镜像查询命令 docker search mysql 几个 ...

  4. 数据库 之MySQL 简单教程

      So Easy系列之MySQL数据库教程 1.   数据库概述 1.1.  数据库概述 数据库(Database)是按照数据结构来组织.存储和管理数据的仓库,它产生于距今六十多年前,随着信息技术和 ...

  5. 21分钟 MySQL 入门教程(转载!!!)

    21分钟 MySQL 入门教程 目录 一.MySQL的相关概念介绍 二.Windows下MySQL的配置 配置步骤 MySQL服务的启动.停止与卸载 三.MySQL脚本的基本组成 四.MySQL中的数 ...

  6. MySQL 升级详细步骤 (包括 Percona)

    MySQL 升级步骤 MySQL 5.1.72 升级到 MySQL 5.5.36 鉴于我在升级的时候遇到的麻烦问题,我觉得有必要把一些细节说清楚,免得引起误解了.感觉官方文档上的升级步骤写的比较简单, ...

  7. MySQL Python教程(1)

    首先对于数据库的基本操作要有一定基础,其次了解Python的基础语法. 建议先阅读MysqL中文教程http://doc.mysql.cn/mysql5/refman-5.1-zh.html-chap ...

  8. 迅美VPS安装和配置MySQL数据库教程

    MySQL相关教程与知识:    迅美VPS安装和配置MySQL数据库教程    navicat8管理MySQL教程-创建数据库和导入数据    navicat8管理MySQL教程-管理建立用户和分配 ...

  9. 原创教程:SpagoBI4.2汉化及配置Mysql数据库教程

    SpagoBI4.2汉化及配置Mysql数据库教程 商务智能套件SpagoBI提供一个基于J2EE的框架用于管理BI对象如报表.OLAP分析.仪表盘.记分卡以及数据挖掘模型等的开源BI产品.它提供的B ...

随机推荐

  1. mac的终端怎么退出git:(master)

    今天在终端误操作,在主目录下执行git init命令,结果杯具了, 总是出现这个提示. 各种搜索解决方案,终于退出了. 方法如下: 删掉.git目录: rm -rf ~/.git

  2. Cannot find a valid baseurl for repo: base/7/x86_6 解决方法

    安装centos7后发现不能上网, sudo vi /etc/sysconfig/network-scripts/ifcfg-ens33 将ONBOOT=no改为ONBOOT=yes 然后重启网络服务 ...

  3. Java一次性读取文件的内容

    我们做文本处理的时候的最常用的就是读写文件了,尤其是读取文件,不论是什么文件,我都倾向于一次性将文本的原始内容直接读取到内存中再做处理,当然,这需要你有一台大内存的机器,内存不够者……可以一次读取少部 ...

  4. 懒懒的Rain的寒假小结

    快开学了,才发现这个寒假算是又废了,放假前满满的雄心壮志要刷多少多少题回家写一会都不行了,唉,在家真不适合学习.可能还是因为没有学习的气氛吧,在家老是就自己一个人,遇到问题或者出现什么错误了没有人可以 ...

  5. Django 日志

    Django使用Python内置的logging模块实现它自己的日志系统. 如果你没有使用过logging模块,请参考Python教程中的相关章节. 直达链接<logging模块详解>. ...

  6. 学Hadoop还是Spark好?

    JS 相信看这篇文章的你们,都和我一样对Hadoop和Apache Spark的选择有一定的疑惑,今天查了不少资料,我们就来谈谈这两种 平台的比较与选择吧,看看对于工作和发展,到底哪个更好. 一.Ha ...

  7. (转)C# Stopwatch详解

    C# Stopwatch类 命名空间:System.Diagnostics; namespace System.Diagnostics { // 提供一组方法和属性,可用于准确地测量运行时间. pub ...

  8. Learn Python3 the hard way 第二天总结 命令行(2)

    复制文件 命令:cp含义:很简单,就是把一个文件复制成一个新文件而已.使用 cp -r命令可以复制一些包含文件的目录 移动文件 命令:mv含义:对文件进行"rename". 查看文 ...

  9. oracle查看表中否存在某字段,数据库是否存在某张表

      数据库是否存在某字段 SELECT COUNT(*) FROM USER_TAB_COLUMNS WHERE TABLE_NAME = '表名' AND COLUMN_NAME = '字段名'; ...

  10. LeetCode--020--括号匹配(java版)

    给定一个只包括 '(',')','{','}','[',']' 的字符串,判断字符串是否有效. 有效字符串需满足: 左括号必须用相同类型的右括号闭合. 左括号必须以正确的顺序闭合. 注意空字符串可被认 ...