MySQL升级教程(CentOS)
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)的更多相关文章
- CentOS下Mysql安装教程
CentOS下Mysql安装教程 本人学习Linux时使用的是CentOs5.5版本,在该环境中,Mysql的安装方法有很多种,下面我只讲我这次成功了的方法,作为一个记录,供大家参考,同时给自己做一个 ...
- Windows之MySQL安装教程
MySQL安装说明 MySQL是一个关系型数据库管理系统,由瑞典MySQL AB 公司开发,目前属于 Oracle 旗下产品.MySQL 是最流行的关系型数据库管理系统之一,在 WEB 应用方面,My ...
- Docker系列之MySQL安装教程
Docker系列之MySQL安装教程 有了前面的基础教程Docker系列之常用命令操作手册之后,本博客记录一篇mysql的安装教程 mysql镜像查询命令 docker search mysql 几个 ...
- 数据库 之MySQL 简单教程
So Easy系列之MySQL数据库教程 1. 数据库概述 1.1. 数据库概述 数据库(Database)是按照数据结构来组织.存储和管理数据的仓库,它产生于距今六十多年前,随着信息技术和 ...
- 21分钟 MySQL 入门教程(转载!!!)
21分钟 MySQL 入门教程 目录 一.MySQL的相关概念介绍 二.Windows下MySQL的配置 配置步骤 MySQL服务的启动.停止与卸载 三.MySQL脚本的基本组成 四.MySQL中的数 ...
- MySQL 升级详细步骤 (包括 Percona)
MySQL 升级步骤 MySQL 5.1.72 升级到 MySQL 5.5.36 鉴于我在升级的时候遇到的麻烦问题,我觉得有必要把一些细节说清楚,免得引起误解了.感觉官方文档上的升级步骤写的比较简单, ...
- MySQL Python教程(1)
首先对于数据库的基本操作要有一定基础,其次了解Python的基础语法. 建议先阅读MysqL中文教程http://doc.mysql.cn/mysql5/refman-5.1-zh.html-chap ...
- 迅美VPS安装和配置MySQL数据库教程
MySQL相关教程与知识: 迅美VPS安装和配置MySQL数据库教程 navicat8管理MySQL教程-创建数据库和导入数据 navicat8管理MySQL教程-管理建立用户和分配 ...
- 原创教程:SpagoBI4.2汉化及配置Mysql数据库教程
SpagoBI4.2汉化及配置Mysql数据库教程 商务智能套件SpagoBI提供一个基于J2EE的框架用于管理BI对象如报表.OLAP分析.仪表盘.记分卡以及数据挖掘模型等的开源BI产品.它提供的B ...
随机推荐
- 理解 Redis(1) - Redis 简介
Redis 的含义 全称: REmote DIctionary Server 远程词典服务器 由于支持 string, list, set, ordered set, hash 等多重数据结构, 因此 ...
- animate.css –齐全的CSS3动画库--- 学习笔记
animate.css – 齐全的CSS3动画库 学习网站: https://daneden.github.io/animate.css/ http://www.dowebok.com/98.html ...
- “AI”项目日记
前言:为了更好的以“实践”巩固“学习”,利用空余时间,打造一个属于自己的项目 项目目标: 1.将学习的知识用项目实践,在实践过程中去领悟新的知识 2.高度自由,根据不同时期的学习目标,融入项目中去用代 ...
- 本地Windows上安装 MySQL数据库
1.首先下载mysql安装文件,下载地址:https://dev.mysql.com/downloads/mysql/ 2.将下载下来的压缩包解压到本地一个文件夹中 3.在文件根目录下新增my.ini ...
- Go使用protobuf
WIN7 + Go1.9.2+protobuf3.5.1 1.首先定义一个用于测试的proto文件test.proto,内容如下: syntax = "proto3"; packa ...
- SVN下载项目导入到eclipse中出现错误解决办法:
首先要确定settings.xml配置路径正确 (下面是我自己的路径,设置自己的路径) 用客户端暴力解决方法: 1)把本地中工作空间中内容删除重新下载 2)导入到eclipse中 会出现一些问题 右键 ...
- 关于ascii码的一些内容
1.通过C#程序输出tab(制表符)内容. 1.1常用方式我们可以是 //测试输出\t到文件 File.WriteAllText("test.txt", "a\tb\tc ...
- ThinkPHP实用项
跟踪信息 – 两种模式 – Sql调试 – 性能调试
- echarts画多条一元回归线
理论上两点一线,只要两个点即可 option = { title: { text: '', left: 'center' }, tooltip: { // trigger: 'item', // fo ...
- LeetCode--002--两数相加(java版)
给出两个 非空 的链表用来表示两个非负的整数.其中,它们各自的位数是按照 逆序 的方式存储的,并且它们的每个节点只能存储 一位 数字. 如果,我们将这两个数相加起来,则会返回一个新的链表来表示它们的和 ...