采用MySQL_upgrade升级授权表方式升级
1.7.1 采用MySQL_upgrade升级授权表方式升级(1)
这种升级方式比较省事,通过MySQL_upgrade命令即可完成。下面来演示一下整个升级过程。
1)修改my.cnf配置文件,因为MySQL5.1里的参数在5.5版本里已经不识别了。
- #skip-locking 在5.5里已经不识别了,改成
- skip-external-locking
- #log-long-format 在5.5里已经不识别了,改成
- log-short-format
- #log_slow_queries 在5.5里已经不识别了,改成
- slow-query-log
- #default-character-set = utf8 在5.5里已经不识别了,改成
- character-set-server = utf8
- #注释掉default_table_type = MyISAM? 在5.5里已经不识别了
- #注释掉MyISAM_max_extra_sort_file_size 在5.5里已经不识别了
- #innodb_file_io_threads已经不识别了,改成
- innodb_read_io_threads = 8
- innodb_write_io_threads = 8
- # 把以前的built-in文件格式改为Barracuda
- innodb_file_format = Barracuda
- #注释掉同步的信息,否则启动时报错
- #master-host = 192.168.110.20
- #master-user = repl
- #master-password = repl
- #master-connect-retry=30
- #另如果你采用了InnoDB-Plugin,还要注销掉
- #ignore_builtin_innodb
- #plugin-load=innodb=ha_innodb_plugin.so;innodb_trx=ha_innodb_plugin.so;innodb_locks=ha_innodb_plugin.so;innodb_lock_waits=ha_i
- nnodb_plugin.so;innodb_cmp=ha_innodb_plugin.so;innodb_cmp_reset=ha_innodb_plugin.so;innodb_cmpmem=ha_innodb_plugin.so;innodb_c
- mpmem_reset=ha_innodb_plugin.so
2)修改innodb_fast_shutdown等于0。先来看一下这个参数是做什么的。

解释:关闭MySQL时,设置为1,不会做清除脏页和插入缓冲区合并操作,也不会把脏页刷入磁盘。设置为0,会做清除脏页和插入缓冲区合并操作,并把脏页刷入磁盘,如此设置关闭速度是最慢的。设置为2,不会做清除脏页和插入缓冲区合并操作,也不会把脏页刷入磁盘,而是刷入redo log事务日志里,待其下次启动MySQL时再恢复,关闭速度是最快的。在做升级或降级操作时,应将其设置为0,保证数据的完整性,避免发生错误。该参数支持动态修改。
设置该参数的命令如下:
- set global innodb_fast_shutdown=0;
关于innodb_fast_shutdown 参数的介绍,请参见MySQL5.5手册:

3)关闭MySQL服务,命令如下:
- /etc/init.d/MySQL stop或MySQLadmin -uroot -p123456 shutdown
4)跳过MySQL授权表启动MySQL服务,命令如下:
- MySQLd --defaults-file=/etc/my.cnf --skip-grant-tables &
5)执行更新程序,如下所示:
- [root@vm02 MySQL]# /usr/local/MySQL/bin/MySQL_upgrade
- Looking for 'MySQL' as: bin/MySQL
- Looking for 'MySQLcheck' as: bin/MySQLcheck
- Running 'MySQLcheck' with connection arguments: '--port=3306' '--socket=/tmp/MySQL.sock'
- Running 'MySQLcheck' with connection arguments: '--port=3306' '--socket=/tmp/MySQL.sock'
- MySQL.columns_priv OK
- MySQL.db OK
- MySQL.event OK
- MySQL.func OK
- MySQL.general_log OK
- MySQL.help_category OK
- MySQL.help_keyword OK
- MySQL.help_relation OK
- MySQL.help_topic OK
- MySQL.host OK
- MySQL.ndb_binlog_index OK
- MySQL.plugin OK
- MySQL.proc OK
- MySQL.procs_priv OK
- MySQL.servers OK
- MySQL.slow_log OK
- MySQL.tables_priv OK
- MySQL.time_zone OK
- MySQL.time_zone_leap_second OK
- MySQL.time_zone_name OK
- MySQL.time_zone_transition OK
- MySQL.time_zone_transition_type OK
- MySQL.user OK
- test.heartbeat OK
- test.log20111127 OK
- test.log20111128 OK
- test.log20111129 OK
- test.log20111130 OK
- test.log20111201 OK
- test.log20111202 OK
- test.log20111203 OK
- test.log20111204 OK
- test.log20111205 OK
- test.log20111206 OK
- test.log20111207 OK
- test.t1 OK
- test.t2 OK
- Running 'MySQL_fix_privilege_tables'...
- OK
.7.1 采用MySQL_upgrade升级授权表方式升级(2)
6)再次关闭MySQL服务,命令如下:
- /etc/init.d/MySQL stop或MySQLadmin -uroot -p123456 shutdown
7)正常启动MySQL服务,命令如下:
- MySQLd_safe --defaults-file=/etc/my.cnf --user=MySQL &
8)来查看一下版本,如下所示:
- MySQL> select version();
- +-----------------------------------------------------------+
- | version() |
- +-----------------------------------------------------------+
- | 5.5.20-enterprise-commercial-advanced-log |
- +-----------------------------------------------------------+
- 1 row in set (0.00 sec)
- MySQL> select @@innodb_version;
- +----------------------------+
- | @@innodb_version |
- +----------------------------+
- | 1.1.8 |
- +----------------------------+
- 1 row in set (0.00 sec)
至此,升级过程完毕。
在升级过程中,有一个需要注意的问题,这是作者之前在安装时遇到的。RHEL5.3安装MySQL5.5时出现系统崩溃(如图1-24所示),当时的环境为:系统是RHEL5.3,64位,XFS分区,MySQL5.5.20二进制版本。

系统崩溃时,作者用DELLDRAC远程管理卡抓的截屏如图1-25所示。

可以看出,XFS文件系统在读写时出现报错。出现此问题的原因是,RHEL5.3系统内核未自带XFS文件系统,是通过往内核打补丁使之支持的,后来把系统升级为RHEL5.5,系统正常了,没有出现死机情况。
注意
RHEL5.5版本开始,内核支持XFS文件系统。
采用MySQL_upgrade升级授权表方式升级的更多相关文章
- Oracle-11g-R2(11.2.0.3.x)RAC Oracle Grid & Database 零宕机方式升级 PSU(自动模式)
升级环境: 1.源库版本: Grid Infrastructure:11.2.0.3.13 Database:11.2.0.3.13 2.目标库版本: Grid Infrastructure:11.2 ...
- nrf52——DFU升级USB/UART升级方式详解(基于SDK开发例程)
摘要:在前面的nrf52--DFU升级OTA升级方式详解(基于SDK开发例程)一文中我测试了基于蓝牙的OTA,本文将开始基于UART和USB(USB_CDC_)进行升级测试. 整体升级流程: 整个过程 ...
- yum和编译两种方式升级or降级Centos内核
http://blog.51cto.com/renzhiyuan/1882599 今天探讨用yum和编译两种方式升级或者降级内核版本: 升级:比如玩kvm,docker等虚拟化,centos内核则升级 ...
- centos6 yum方式升级内核【转】
最近没有时间好久没有写文章了,今天由于需要安装docker学习虚拟容器的知识,需要升级OS的内核.目前我这边使用的OS是centos6.5,内核是2.6版本的,如下: cat /etc/issue u ...
- centos7上Jenkins通过rpm包方式直接安装及使用war包方式升级
一.通过rpm包方式直接安装jenkins 1.官网下载rpm安装包(前提是安装jdk) wget https://pkg.jenkins.io/redhat-stable/jenkins-2.121 ...
- Android应用程序的自动更新升级(自身升级、通过tomcat)(转)
Android应用程序的自动更新升级(自身升级.通过tomcat) http://blog.csdn.net/mu0206mu/article/details/7204746 刚入手android一个 ...
- 手动升级 Confluence - 开始升级之前
在本指南中,我们将会帮助你使用 zip / tar.gz 文件将你的 Confluence 安装实例在 Windows 或者 Linux 版本中升级到最新的版本. 升级到任何最新的版本都是免费的,如果 ...
- [转]Net 下采用GET/POST/SOAP方式动态调用WebService C#实现
本文转自:http://www.cnblogs.com/splendidme/archive/2011/10/05/2199501.html 一直以来,我们都为动态调用WebService方法而烦恼. ...
- Cocoa 框架为什么采用两阶段的方式来创建对象?
对于之前一直使用C#语言的我来说,刚开始接触Objective-c来创建对象时很迷惑,为何创建对象一般情况下需要通过发送两个消息(调用两个方法)才能创建一个类实例对象(例如[[UIButton all ...
随机推荐
- tomcat 编码问题
默认情况下,tomcat使用的的编码方式:iso8859-1 修改tomcat下的conf/server.xml文件 找到如下代码: < Connector port="8080 ...
- mysql语句, 空的 order by , 空的 where
SQL语句里, 空的 where, where 1 AND status=1 空的 order by, order by null, updatetime desc 这种空值的情况, 是很有用处的: ...
- codeforces Gravity Flip 题解
版权声明:本文作者靖心,靖空间地址:http://blog.csdn.net/kenden23/,未经本作者同意不得转载. https://blog.csdn.net/kenden23/article ...
- Struts详解
1.什么是MVC? MVC是Model,View,Controller的缩写,MVC是Application开发的设计模式, 也就是大家所知道的Model2.在MVC的设计模式中,它包括三类对象:(1 ...
- 计算机网络协议层次(转发:http://blog.csdn.net/gavin_john/article/details/53186570)
计算机网络学习的核心内容就是网络协议的学习.网络协议是为计算机网络中进行数据交换而建立的规则.标准或者说是约定的集合.计算机网络协议同我们的语言一样,多种多样. 为了给网络协议的设计提供一个结构,网络 ...
- python基础11 ---函数模块1
函数模块 一.函数模块的作用(为什么要有函数模块) 1.函数模块可以减少代码量 2.函数模块方便阅读 3.函数模块维护性强二.函数模块的本质以及调用方法 1.函数模块的本质就是一个.py结尾的文件,该 ...
- Sql Server2008——存储过程编程简单例子
主要介绍: 存储过程的定义方法及其使用方法. 实例介绍: 1 创建学生表Student create database Stu use Stu go CREATE TABLE Student ( Sn ...
- flex 坐标系
全局坐标(舞台坐标) 本地坐标 内容坐标系 地图坐标(MapPoint) flash和flex针对不同的目的,提供了3种不同的坐标系 全局的就是(stage级别的) 本地坐标系(组件级别的) 内容 ...
- rail模型
rail是一种以用户为中心的性能模型,又google提出,其主要目标是让用户满意,主要分为response animation idle load四个部分 response 输入延迟时间小于100毫秒 ...
- Luogu-2600 [ZJOI2008]瞭望塔
把地面看成半平面,能看到所有位置的点所在的区域即为半平面的交 因为分段函数的极值只会在转折处或边界取到,所以对于半平面上和地面上的每一个交点都求一下距离就好了 #include<cmath> ...