1.7.1 采用MySQL_upgrade升级授权表方式升级(1)

这种升级方式比较省事,通过MySQL_upgrade命令即可完成。下面来演示一下整个升级过程。

1)修改my.cnf配置文件,因为MySQL5.1里的参数在5.5版本里已经不识别了。

  1. #skip-locking  在5.5里已经不识别了,改成
  2. skip-external-locking
  3. #log-long-format  在5.5里已经不识别了,改成
  4. log-short-format
  5. #log_slow_queries  在5.5里已经不识别了,改成
  6. slow-query-log
  7. #default-character-set = utf8  在5.5里已经不识别了,改成
  8. character-set-server = utf8
  9. #注释掉default_table_type = MyISAM? 在5.5里已经不识别了
  10. #注释掉MyISAM_max_extra_sort_file_size  在5.5里已经不识别了
  11. #innodb_file_io_threads已经不识别了,改成
  12. innodb_read_io_threads = 8
  13. innodb_write_io_threads = 8
  14. # 把以前的built-in文件格式改为Barracuda
  15. innodb_file_format = Barracuda
  16. #注释掉同步的信息,否则启动时报错
  17. #master-host = 192.168.110.20
  18. #master-user = repl
  19. #master-password = repl
  20. #master-connect-retry=30
  21. #另如果你采用了InnoDB-Plugin,还要注销掉
  22. #ignore_builtin_innodb
  23. #plugin-load=innodb=ha_innodb_plugin.so;innodb_trx=ha_innodb_plugin.so;innodb_locks=ha_innodb_plugin.so;innodb_lock_waits=ha_i
  24. nnodb_plugin.so;innodb_cmp=ha_innodb_plugin.so;innodb_cmp_reset=ha_innodb_plugin.so;innodb_cmpmem=ha_innodb_plugin.so;innodb_c
  25. mpmem_reset=ha_innodb_plugin.so

2)修改innodb_fast_shutdown等于0。先来看一下这个参数是做什么的。

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

设置该参数的命令如下:

  1. set global innodb_fast_shutdown=0;

关于innodb_fast_shutdown 参数的介绍,请参见MySQL5.5手册:

3)关闭MySQL服务,命令如下:

  1. /etc/init.d/MySQL stop或MySQLadmin -uroot -p123456 shutdown

4)跳过MySQL授权表启动MySQL服务,命令如下:

  1. MySQLd --defaults-file=/etc/my.cnf --skip-grant-tables &

5)执行更新程序,如下所示:

    1. [root@vm02 MySQL]# /usr/local/MySQL/bin/MySQL_upgrade
    2. Looking for 'MySQL' as: bin/MySQL
    3. Looking for 'MySQLcheck' as: bin/MySQLcheck
    4. Running 'MySQLcheck' with connection arguments: '--port=3306' '--socket=/tmp/MySQL.sock'
    5. Running 'MySQLcheck' with connection arguments: '--port=3306' '--socket=/tmp/MySQL.sock'
    6. MySQL.columns_priv                                 OK
    7. MySQL.db                                           OK
    8. MySQL.event                                        OK
    9. MySQL.func                                         OK
    10. MySQL.general_log                                  OK
    11. MySQL.help_category                                OK
    12. MySQL.help_keyword                                 OK
    13. MySQL.help_relation                                OK
    14. MySQL.help_topic                                   OK
    15. MySQL.host                                         OK
    16. MySQL.ndb_binlog_index                             OK
    17. MySQL.plugin                                       OK
    18. MySQL.proc                                         OK
    19. MySQL.procs_priv                                   OK
    20. MySQL.servers                                      OK
    21. MySQL.slow_log                                     OK
    22. MySQL.tables_priv                                  OK
    23. MySQL.time_zone                                    OK
    24. MySQL.time_zone_leap_second                        OK
    25. MySQL.time_zone_name                               OK
    26. MySQL.time_zone_transition                         OK
    27. MySQL.time_zone_transition_type                    OK
    28. MySQL.user                                         OK
    29. test.heartbeat                                     OK
    30. test.log20111127                                   OK
    31. test.log20111128                                   OK
    32. test.log20111129                                   OK
    33. test.log20111130                                   OK
    34. test.log20111201                                   OK
    35. test.log20111202                                   OK
    36. test.log20111203                                   OK
    37. test.log20111204                                   OK
    38. test.log20111205                                   OK
    39. test.log20111206                                   OK
    40. test.log20111207                                   OK
    41. test.t1                                                       OK
    42. test.t2                                                       OK
    43. Running 'MySQL_fix_privilege_tables'...
    44. OK
    45. .7.1 采用MySQL_upgrade升级授权表方式升级(2)

      6)再次关闭MySQL服务,命令如下:

      1. /etc/init.d/MySQL stop或MySQLadmin -uroot -p123456 shutdown

      7)正常启动MySQL服务,命令如下:

      1. MySQLd_safe  --defaults-file=/etc/my.cnf --user=MySQL &

      8)来查看一下版本,如下所示:

      1. MySQL> select version();
      2. +-----------------------------------------------------------+
      3. | version()                                                                |
      4. +-----------------------------------------------------------+
      5. | 5.5.20-enterprise-commercial-advanced-log |
      6. +-----------------------------------------------------------+
      7. 1 row in set (0.00 sec)
      8. MySQL> select @@innodb_version;
      9. +----------------------------+
      10. | @@innodb_version |
      11. +----------------------------+
      12. | 1.1.8                            |
      13. +----------------------------+
      14. 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升级授权表方式升级的更多相关文章

  1. 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 ...

  2. nrf52——DFU升级USB/UART升级方式详解(基于SDK开发例程)

    摘要:在前面的nrf52--DFU升级OTA升级方式详解(基于SDK开发例程)一文中我测试了基于蓝牙的OTA,本文将开始基于UART和USB(USB_CDC_)进行升级测试. 整体升级流程: 整个过程 ...

  3. yum和编译两种方式升级or降级Centos内核

    http://blog.51cto.com/renzhiyuan/1882599 今天探讨用yum和编译两种方式升级或者降级内核版本: 升级:比如玩kvm,docker等虚拟化,centos内核则升级 ...

  4. centos6 yum方式升级内核【转】

    最近没有时间好久没有写文章了,今天由于需要安装docker学习虚拟容器的知识,需要升级OS的内核.目前我这边使用的OS是centos6.5,内核是2.6版本的,如下: cat /etc/issue u ...

  5. centos7上Jenkins通过rpm包方式直接安装及使用war包方式升级

    一.通过rpm包方式直接安装jenkins 1.官网下载rpm安装包(前提是安装jdk) wget https://pkg.jenkins.io/redhat-stable/jenkins-2.121 ...

  6. Android应用程序的自动更新升级(自身升级、通过tomcat)(转)

    Android应用程序的自动更新升级(自身升级.通过tomcat) http://blog.csdn.net/mu0206mu/article/details/7204746 刚入手android一个 ...

  7. 手动升级 Confluence - 开始升级之前

    在本指南中,我们将会帮助你使用 zip / tar.gz 文件将你的 Confluence 安装实例在 Windows 或者 Linux 版本中升级到最新的版本. 升级到任何最新的版本都是免费的,如果 ...

  8. [转]Net 下采用GET/POST/SOAP方式动态调用WebService C#实现

    本文转自:http://www.cnblogs.com/splendidme/archive/2011/10/05/2199501.html 一直以来,我们都为动态调用WebService方法而烦恼. ...

  9. Cocoa 框架为什么采用两阶段的方式来创建对象?

    对于之前一直使用C#语言的我来说,刚开始接触Objective-c来创建对象时很迷惑,为何创建对象一般情况下需要通过发送两个消息(调用两个方法)才能创建一个类实例对象(例如[[UIButton all ...

随机推荐

  1. js网页视频播放: vcastr22 、 flowplayer 、 jwplayer

    实例结构: 实例1: demo.html <embed src="vcastr22.swf?vcastr_file=../wujiandao.flv" allowFullSc ...

  2. Bootstrap学习-导航条-分页导航

    1.导航条基础 导航条(navbar)和上一节介绍的导航(nav),就相差一个字,多了一个“条”字.其实在Bootstrap框架中他们还是明显的区别.在导航条(navbar)中有一个背景色.而且导航条 ...

  3. android中handler和bundle有什么区别和联系 都是用来传递消息吗都是信息的载体吗

    1.handler是消息处理者,通常重写Handler的handleMessage()方法,在方法中处理接收到的不同消息,例如: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 Ha ...

  4. 计算机网络协议层次(转发:http://blog.csdn.net/gavin_john/article/details/53186570)

    计算机网络学习的核心内容就是网络协议的学习.网络协议是为计算机网络中进行数据交换而建立的规则.标准或者说是约定的集合.计算机网络协议同我们的语言一样,多种多样. 为了给网络协议的设计提供一个结构,网络 ...

  5. CAS的实现Atomic类库

    atomic 原子(atomic)本意是"不能被进一步分割的最小粒子",而原子操作(atomic operation)意为"不可被中断的一个或一系列操作".在多 ...

  6. Yii2 提供可以用属性的方式去获取类的一个方法

    刚开始用 Yii 的小朋友可能对下面的写法非常疑惑: public function actionIndex() { $user = User::find()->where(['name'=&g ...

  7. Mysql——JDBC编程 理论介绍

    一.JDBC简介(来自俞琰--数据库老师) Java数据库编程主要使用JDBC技术.JDBC是一种用于执行SQL语句的Java API.它由一组用Java编写的类和接口组成.JDBC为开发人员提供了一 ...

  8. Linux电源管理(4)-Power Manager Interface【转】

    本文转载自:http://www.wowotech.net/pm_subsystem/pm_interface.html 1. 前言 Linux电源管理中,相当多的部分是在处理Hibernate.Su ...

  9. 关于mysql使用索引的一个问题

    mysql一直号称是免维护的,但是我发现它往往连最表基本索引都不能自动维护,情景如下: 1.我用mysqldump导出一个大表longformh; 2.用mysql.exe导入到一个新库中: 3.查看 ...

  10. 算法(Algorithms)第4版 练习 1.5.23

    package com.qiusongde; import edu.princeton.cs.algs4.StdOut; public class Exercise1523 { public stat ...