CentOS 6 下升级安装Mysql 5.5 完整步骤
使用系统CentOS 6.2本来已经系统自带安装了mysql 5.1,但是奈何5.1不支持utf8mb4字符集(详见:http://blog.csdn.net/shootyou/article/details/8236024 ),只能想办法将Mysql升级到5.5。
这果然是一次蛋疼的升级过程。
完整步骤:
1.首先备份数据,虽说成功的升级数据不会丢失,但是保险起见备份下。
mysqldump -u xxx -h xxx -P 3306 -p --all-databases > databases.sql
最好连数据文件和配置文件也备份一份。
cp -R /data/mysql mysql-5.1-data cp /etc/my.cnf my.cnf-5.1
备份完之后停止mysql服务。
service mysqld stop
好了,开始进入正题。
2.卸载旧版本的Mysql
yum remove mysql mysql-*
执行之后再看看是不是残余一些mysql-libs之类的
yum list installed | grep mysql
如果有,并确认没用之后也可以删除。
yum remove mysql-libs
注意删除mysql-libs可能会对一些依赖软件产生影响,这里我们不讨论。
好了,卸载的动作基本结束。
3.安装Mysql5.5
如果你不偷懒,那么选择编译安装可能会更好,可以参考:http://my.oschina.net/laiwanshan/blog/72903
这里我们讨论使用yum安装的过程。
在走了N多弯路之后我发现需要首先安装一些新的repo。
rpm -Uvh http://download.fedora.redhat.com/pub/epel/6/i386/epel-release-6-2.noarch.rpm rpm -Uvh http://mirrors.neusoft.edu.cn/epel/6/i386/epel-release-6-7.noarch.rpm rpm -Uvh http://packages.sw.be/rpmforge-release/rpmforge-release-0.5.2-2.el6.rf.x86_64.rpm rpm -Uvh http://dl.iuscommunity.org/pub/ius/stable/Redhat/6/x86_64/epel-release-6-5.noarch.rpm rpm -Uvh http://rpms.famillecollet.com/enterprise/remi-release-6.rpm
这个时候你再运行:
yum --enablerepo=remi,remi-test info mysql mysql-server
就会发现mysql的版本已经是5.5.x了。毫不犹豫安装之。
yum --enablerepo=remi,remi-test install mysql mysql-server
安装到此结束。接下来是启动和升级。
4.启动和升级
这个时候你想直接启动十有八九会报错,主要的问题两块:一是配置文件,5.5相比5.1有些配置改名了,这个需要你对照启动错误日志一点点改进。二是没有执行mysql_upgrade。
在确保配置文件没问题之后运行:
mysql_upgrade -u root -p
等他全部ok。
再试试运行mysql。
service mysqld start
希望上帝保佑你看到的是绿色的[ok]。
如果你需要从CentOS 5上升级Mysql那么你可以参考:http://www.ha97.com/4145.html ,但是注意这个只适用于CentOS 5,我一开始就是被这个误导了耽误了半天时间。
其他参考:
http://blog.iphoting.com/blog/2012/06/19/upgrading-to-mysql-5-dot-5-on-centos-6/
http://stackoverflow.com/questions/9361720/update-mysql-version-from-5-1-to-5-5-in-centos-6-2
CentOS 6 下升级安装Mysql 5.5 完整步骤的更多相关文章
- CentOS 6下编译安装MySQL 5.6
一:卸载旧版本 使用下面的命令检查是否安装有MySQL Server rpm -qa | grep mysql 有的话通过下面的命令来卸载掉 rpm -e mysql //普通删除模式 rpm -e ...
- CentOS Linux下编译安装MySQL
本文参考张宴的Nginx 0.8.x + PHP 5.2.13(FastCGI)搭建胜过Apache十倍的Web服务器(第6版)[原创]完成.所有操作命令都在CentOS 6.4 64位操作系统下实践 ...
- CentOS系统下Redis安装和自启动配置的步骤
相信大家都知道Redis是一个C实现的基于内存.可持久化的键值对数据库,在分布式服务中常作为缓存服务.所以这篇文章将详细介绍在CentOS系统下如何从零开始安装到配置启动服务.有需要的可以参考借鉴. ...
- centos/linux下的安装mysql
1.从yum 下面下载mysql数据库 yum -y install mysql-server 2.查询该mysql是否安装完成 rpm -qa|grep mysql-server 出现如下图所示标明 ...
- Centos 7下编译安装Mysql
(1)官网下载地址:https://dev.mysql.com/downloads/mysql/ 此处下载的是 mysql-boost-5.7..tar.gz 百度云下载地址:https://pan. ...
- CentOS 6.5下二进制安装 MySQL 5.6
CentOS 6.5 二进制安装MySQL 5.6 1:查看系统版本 [root@10-4-5-9 mysql]# cat /etc/redhat-release CentOS release 6.5 ...
- CentOS 下编译安装MySQL
CnetOS 下编译安装 MySql 查看是否存在旧版本: rpm -qa | grep mysql 卸载旧版本: rpm -e mysql #普通删除模式 rpm -e --nodeps mys ...
- CentOS 7下升级MySQL5.7.23的一个坑
发现CentOS 7下升级MySQL5.7.23的一个坑,以前面升级到MySQL 5.7.23的一个集群为例 在我们环境下打开文件描述符个数的参数open_files_limit在MySQL 5.6. ...
- Linux下yum安装MySQL yum安装MySQL指定版本
yum安装MySQL 1. 查看有没有安装过 yum list installed MySQL* (有存在要卸载yum remove MySQL*) rpm -qa | grep my ...
随机推荐
- 虚拟机安装Linux过程和踩坑
由于想学习node,服务器端大都使用Linux系统,所以就想着在笔记本上弄个虚拟机,装上Linux,使用xshell在window上操作也方便,也借此来熟悉一下Linux,接下来就解释下安装的步骤和遇 ...
- 解决 Operation must use an updateable query
在asp.net 开发环境下,用jet 4.0连接access数据库, 有时会产生Operation must use an updateable query,这是由于相关用户mdb文件没有Modif ...
- structure needs cleaning
If you're attempting to run xfs_repair, getting the error message that suggests mounting the filesys ...
- Python学习(一)安装、环境配置及IDE推荐
Python的安装.环境配置及IDE推荐 官网:https://www.python.org/ 版本:2.x 和 3.x 差别较大:python3是不向下兼容:版本区别可参考网官网介绍 至于选择 Py ...
- 在flask中使用jsonify和json.dumps的区别
转载:https://blog.csdn.net/Duke_Huan_of_Qi/article/details/76064225
- linux如何后台运行进程,而且不随终端关闭而关闭
参考:http://www.cnblogs.com/kaituorensheng/p/3980334.html 使用命令nohup:no hang up,表示关闭终端后,进程并不随着终端关闭而关闭 f ...
- iOS:CoreData数据库的使用四(数据库和UITableViewController以及NSFetchedResultsController一起使用)
CoreData数据库虽然可以和tableview或者UITableViewController一起使用将数据显示在表格上,但是在准备数据的时候,这种方式需要用一个可变数组来装从数据库一次性取出来的所 ...
- Android内存调试命令
adb shell dumpsys meminfo 包名 比如: adb shell dumpsys meminfo cn.com.test
- Jni的Jclass JmethodID JfrieldID的差异
Jni的Jclass JmethodID JfrieldID 这三者都是java类别的属性,本质上都是指标(Pointer).透过这些指标就能快速调用java类别的函数,或存取对象的属性值.在该类别被 ...
- leetcode mock interview-two sum II
package com.company; import java.util.LinkedList; import java.util.List; public class Main { public ...