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. 鼠标画矩形openCV

    #include <cv.h> #include <highgui.h> #include <stdio.h> /*鼠标画矩形*/ void my_mouse_ca ...

  2. Linux环境安装Nginx详细步骤

    1.yum解决编译nginx所需的依赖包,之后你的nginx就不会报错了yum install gcc patch libffi-devel python-devel  zlib-devel bzip ...

  3. easyui的 一些经验

    1. 渲染网络表格时,行操作 <th field="sort_num" width="10" data-options="field:'id', ...

  4. Office 2013“永久激活信息”备份

    Office 2013“永久激活信息”备份还原简明教程及成功恢复的注意事项Office 2013永久激活后及时备份激活信息可以保证重装后快速激活.网上也有流行的各种备份工具,虽然操作简单,但是如果不理 ...

  5. 2014阿里实习生面试题——MySQL如何实现索引的

    这是2014阿里实习生北京站二面的一道试题: 在MySQL中,索引属于存储引擎级别的概念,不同存储引擎对索引的实现方式是不同的,比如MyISAM和InnoDB存储引擎. MyISAM索引实现: MyI ...

  6. VS2015 下载 破解

    Visual Studio Professional 2015简体中文版(专业版): http://download.microsoft.com/download/B/8/9/B898E46E-CBA ...

  7. Blobstore Java API overview

    Blobstore API允许你的应用程序使用(serve)叫做Blobs的数据对象.这种数据对象比Datastore服务所允许的对象的尺寸大得多.Blobs能有效地为大文件比如视频.图片提供服务,允 ...

  8. <linux硬件及硬盘分区>关于硬盘的规划和使用细节

    ps:期末考试 终于结束了,这下我也终于有时间开始继续经营我的博客.这个学期上的一些课真的非常有用,感觉很多课程细地讲都可以写成非常精致的技术博文,比如流水线技术,数据库的一些技术,大学里的考试考的内 ...

  9. Spring中ApplicationContext和beanfactory区别

    BeanFacotry是spring中比较原始的Factory.如XMLBeanFactory就是一种典型的BeanFactory.原始的BeanFactory无法支持spring的许多插件,如AOP ...

  10. Shiro 集成 Web

    Web 集成 Shiro 的练习项目. Servlet + Shiro 项目结构 新建Maven项目,pom配置如下 <project xmlns="http://maven.apac ...