在CentOS 6.2中将MySQL版本从5.1更新到5.5

我试图在CentOS 6.2中将MySQL从5.1更新到5.5。 以下是我做的过程:

1. rpm -Uvh http://repo.webtatic.com/yum/centos/5/latest.rpm 2. yum install libmysqlclient15 --enablerepo=webtatic 3. yum remove mysql mysql-* 4. yum install mysql55 mysql55-server --enablerepo=webtatic 

当我尝试第四步时,我得到了以下输出:

 [root@d2005 /]# yum install mysql55 mysql55-server --enablerepo=webtatic Failed to set locale, defaulting to C Loaded plugins: fastestmirror, presto Loading mirror speeds from cached hostfile * base: yum.singlehop.com * extras: centos.mirrors.tds.net * updates: pubmirrors.reflected.net Setting up Install Process Resolving Dependencies --> Running transaction check ---> Package mysql55.x86_64 0:5.5.10-1.w5 will be installed --> Processing Dependency: mysql55-libs = 5.5.10-1.w5 for package: mysql55-5.5.10-1.w5.x86_64 ---> Package mysql55-server.x86_64 0:5.5.10-1.w5 will be installed --> Processing Dependency: perl-DBD-MySQL for package: mysql55-server-5.5.10-1.w5.x86_64 --> Running transaction check ---> Package mysql55-libs.x86_64 0:5.5.10-1.w5 will be installed ---> Package perl-DBD-MySQL.x86_64 0:4.013-3.el6 will be installed --> Processing Dependency: libmysqlclient.so.16(libmysqlclient_16)(64bit) for package: perl-DBD-MySQL-4.013-3.el6.x86_64 --> Processing Dependency: libmysqlclient.so.16()(64bit) for package: perl-DBD-MySQL-4.013-3.el6.x86_64 --> Running transaction check ---> Package mysql-libs.x86_64 0:5.1.61-1.el6_2.1 will be installed --> Processing Conflict: mysql55-libs-5.5.10-1.w5.x86_64 conflicts mysql-libs < 5.5.10 --> Finished Dependency Resolution Error: mysql55-libs conflicts with mysql-libs You could try using --skip-broken to work around the problem You could try running: rpm -Va --nofiles --nodigest 

如何解决它?

列出旧的MySql

 yum list installed | grep -i mysql 

删除旧的MySql

 yum remove mysql mysql-* 

Remi依赖于CentOS 6和Red Hat(RHEL)6

 rpm -Uvh http://dl.fedoraproject.org/pub/epel/6/i386/epel-release-6-8.noarch.rpm rpm -Uvh http://rpms.famillecollet.com/enterprise/remi-release-6.rpm 

安装MySQL服务器

 yum --enablerepo=remi,remi-test install mysql mysql-server 

列出新的MySql

 yum list installed | grep -i mysql 

启动MySql服务器

/etc/init.d/mysqld start ##使用重新启动后更新

要么

service mysqld start ##使用重新启动后更新

 chkconfig --levels 235 mysqld on 

持续

 mysql_upgrade -u root -p 

现在我的MySql版本是5.5.32

参考:

http://www.webtatic.com/packages/mysql55/

http://www.if-not-true-then-false.com/2010/install-mysql-on-fedora-centos-red-hat-rhel/

希望它有助于一个人

注意:从@pim添加评论(在注释中)

 Just wanted to add that after the upgrade, my crontab was removed as well. Had to reinstall with "yum install vixie-cron" (CentOS 6) 

我用下面的命令来添加一个新的YUM仓库并进行更新:

下载Remi回购

 cd /etc/yum.repos.d wget http://rpms.famillecollet.com/enterprise/remi.repo 

安装/更新mysql版本

 yum --enablerepo=remi install mysql-server 

要么

 yum --enablerepo=remi update mysql-server 

您看起来一直在使用错误的Webtatic Yum版本库版本,而不是您的CentOS版本。 有关详细信息,请参阅http://www.webtatic.com/projects/yum-repository/

例如

 rpm -Uvh http://mirror.webtatic.com/yum/el6/latest.rpm 

您可以使用由IUS社区制作的yum插件来将mysql-libs与mysql55w-libs切换。 (以下假设你仍然使用Webtatic)

 yum install mysql yum-plugin-replace yum replace mysql --replace-with mysql55w 

这应该允许你用mysql55w-libsreplacemysql,同时维护较旧的libmysqlclient用于任何依赖关系。

如果你看到mysql以外的其他软件包被删除了,那么请注意,因为它们可能是需要的,但是使用这种方法,我发现每当我使用它的时候都是可靠的。

我发布这个解决scheme,因为Remi的仓库并不总是理想的解决scheme。 这个方法比较复杂,但是不会因为使用与基本分发包匹配的软件包名称的软件仓库而意外更新整个Web栈。

以上回复没有为我工作(得到这个错误 – 错误:/var/tmp/rpm-tmp.tyukGy:不是一个rpm包)。

我遵循这些步骤 –

 ## Remove existing/old MySQL ## yum remove mysql mysql-* rm -rf /var/lib/mysql rm -rf /var/log/mysql* ## Install Remi Repository on RHEL/CentOS 6.7-6.0 ## rpm -Uvh http://download.fedoraproject.org/pub/epel/6/i386/epel-release-6-7.noarch.rpm rpm -Uvh http://rpms.famillecollet.com/enterprise/remi-release-6.rpm ## Install Remi Repository on RHEL/CentOS 5.4-5.0 ## rpm -Uvh http://dl.fedoraproject.org/pub/epel/5/i386/epel-release-5-4.noarch.rpm rpm -Uvh http://rpms.famillecollet.com/enterprise/remi-release-5.rpm yum --enablerepo=remi list mysql mysql-server yum --enablerepo=remi install mysql mysql-server 

取自 – http://www.tecmint.com/install-mysql-on-rhel-centos-6-5-fedora-17-12/

通过以上操作,我卸载了MySQL 5.0。*并用此replace了它 –

 [root@localhost]# /usr/bin/mysqladmin -u root -p version /usr/bin/mysqladmin Ver 8.42 Distrib 5.5.28, for Linux on x86_64 Copyright (c) 2000, 2012, Oracle and/or its affiliates. All rights reserved. Oracle is a registered trademark of Oracle Corporation and/or its affiliates. Other names may be trademarks of their respective owners. Server version 5.5.28 Protocol version 10 Connection Localhost via UNIX socket UNIX socket /var/lib/mysql/mysql.sock Uptime: 32 sec Threads: 1 Questions: 3 Slow queries: 0 Opens: 33 Flush tables: 1 Open tables: 26 Queries per second avg: 0.093 [root@localhost]# 

我的CentOS版本 –

 [root@localhost]# cat /etc/redhat-release CentOS release 6.3 (Final) [root@localhost]# uname -a Linux localhost.localdomain 2.6.32-279.14.1.el6.x86_64 #1 SMP Tue Nov 6 23:43:09 UTC 2012 x86_64 x86_64 x86_64 GNU/Linux 

2015年8月19日 – 对于那些在较旧的(但仍然体面的)硬件与相匹配的操作系统(通常是32位的机器)的工作。

– 这将升级到MySQL 5.6社区不5.5 –

这对我来说,经过一些研究和混合/匹配/testing在互联网的各种页面上find的答案(主要从这个页面和http://dev.mysql.com/doc/refman/5.6/en/linux-installation- yum-repo.html )。 我的操作系统发货与MySQL 5.1,我想有5.6。

我的系统

 [root@host]# cat /etc/*release CentOS release 6.7 (Final) [root@host]# uname -a Linux host 2.6.32-573.3.1.el6.i686 #1 SMP Thu Aug 13 19:58:36 UTC 2015 i686 i686 i386 GNU/Linux [root@host]# arch i686 

这是安装在2006年mac pro 1.1(CPU升级到3.0GHz的英特尔至强X5365四核)。

我跑的命令

这是在通过yum全新安装操作系统和系统更新之后立即完成的

列表当前安装的MySQL

 yum list installed | grep -i mysql 

删除安装的msql

 yum remove mysql mysql-* 

列表当前安装的MySQL

 yum list installed | grep -i mysql 

下载rpm包含mysql 5.6

 wget http://dev.mysql.com/get/mysql-community-release-el6-5.noarch.rpm 

安装mysql

 rpm -Uvh mysql-community-release-el6-5.noarch.rpm yum install mysql mysql-server 

列表当前安装的MySQL

 yum list installed | grep -i mysql 

确保mysql在重启时启动

 chkconfig --list mysqld sudo chkconfig mysqld on chkconfig --list mysqld 

启动mysql

 service mysqld start service mysqld status 

结果

 [root@host]# yum list installed | grep -i mysql compat-mysql51.i686 5.1.54-1.el6.remi @remi mysql-community-client.i686 5.6.26-2.el6 @mysql56-community mysql-community-common.i686 5.6.26-2.el6 @mysql56-community mysql-community-libs.i686 5.6.26-2.el6 @mysql56-community mysql-community-release.noarch mysql-community-server.i686 5.6.26-2.el6 @mysql56-community perl-DBD-MySQL.i686 4.013-3.el6 @base [root@host]# mysql --version mysql Ver 14.14 Distrib 5.6.26, for Linux (i686) using EditLine wrapper 

MySQLconfiguration(我没有触摸这个,但信息似乎合法)

一些有趣的基本但有效的性能调优的MySQL:

https://www.digitalocean.com/community/tutorials/how-to-install-mysql-5-6-from-official-yum-repositories

祝你好运!

编辑

我有一些问题创build用户和授予权限,这是如何修复的。

错误

 ERROR 1054 (42S22) at line 1: Unknown column 'plugin' in 'mysql.user' 

固定

  1. 以root身份login到服务器
  2. 用一个简单的mysql连接到mysql
  3. 检查此语句的结果: SELECT COUNT(1) column_count FROM information_schema.columns WHERE table_schema='mysql' AND table_name='user'; 结果是39,43,预计MySQL5.6
  4. 发出这个声明来更新root密码: update mysql.user set Password=PASSWORD('root') where User='root';
  5. exit mysql exit
  6. 重新启动mysql: service mysqld restart
  7. Ran: mysql_upgrade -uroot -proot --force
  8. mysql -uroot -proot重新连接到mysql
  9. 检查此语句的结果: SELECT COUNT(1) column_count FROM information_schema.columns WHERE table_schema='mysql' AND table_name='user'; MySQL 5.6的预期结果是43。 然后,我可以创build我的用户并根据需要授予权限。

使用CentOS-Release-SCL更好,更容易。

软件集合(SCL)存储库

 # yum install centos-release-SCL # yum install mysql55-mysql-server 

完成。

这个博客文章帮助我从MySQL 5.5.15升级到5.5.28。 这个升级也有问题,与mysql55-libs mysql-libs冲突。

 wget -P /etc/yum.repos.d http://rpms.famillecollet.com/enterprise/remi.repo yum --enablerepo=remi -y install mysql-server OR yum --enablerepo=remi -y update mysql-server