web-dev-qa-db-fra.com

Mettez à jour la version de MySQL de 5.1 à 5.5 dans CentOS 6.2.

J'ai essayé de mettre à jour MySQL de 5.1 à 5.5 dans CentOS 6.2. Voici le processus que j'ai fait:

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

Lorsque j'ai essayé la 4ème étape, j'ai obtenu le résultat suivant:

[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

Comment le réparer?

37
Dilip Rajkumar

Pour lister le vieux MySql

yum list installed | grep -i mysql

Pour supprimer Old MySql

yum remove mysql mysql-*

Dépendance de Remi sur CentOS 6 et 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

Installer le serveur MySQL

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

Pour lister le nouveau MySql

yum list installed | grep -i mysql

démarrer le serveur MySql

/etc/init.d/mysqld start ## utiliser redémarrage après mise à jour

OR

service mysqld start ## utiliser redémarrage après mise à jour

chkconfig --levels 235 mysqld on

Dernier

mysql_upgrade -u root -p

Maintenant ma version de MySql est 5.5.32

Ref:

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

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

J'espère que ça aidera quelqu'un

REMARQUE: Ajout des commentaires de @pim (dans les commentaires)

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

J'ai utilisé les commandes suivantes pour ajouter un nouveau référentiel YUM et effectuer la mise à jour:

Télécharger le repo Remi

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

Installer/Mettre à jour la version de mysql

yum --enablerepo=remi install mysql-server

OR

yum --enablerepo=remi update mysql-server
27
Drahcir

Vous semblez avoir utilisé la mauvaise version du référentiel Webtatic Yum que celle de votre version de CentOS. Voir http://www.webtatic.com/projects/yum-repository / pour plus de détails

par exemple.

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

Vous pouvez utiliser un plugin yum créé par la communauté IUS pour changer mysql-libs avec mysql55w-libs. (le suivant en supposant que vous utilisiez toujours Webtatic)

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

Cela devrait vous permettre de remplacer mysql par mysql55w-libs, tout en conservant l'ancien libmysqlclient pour toutes les dépendances.

Si vous voyez des paquets autres que mysql en train d'être supprimés, soyez prudent, ils pourraient être nécessaires, mais en utilisant cette méthode, j'ai trouvé qu'elle était fiable chaque fois que je l'utilisais.

Je poste cette solution car le référentiel de Remi n'est pas toujours la solution idéale. Cette méthode est plus complexe, mais ne vous obligerait jamais à mettre à jour accidentellement toute votre pile Web en utilisant des référentiels utilisant des noms de package correspondant aux packages de distribution de base.

6
Andy

2015/08/19 - Pour ceux d'entre vous qui travaillent sur du matériel ancien (mais toujours correct) avec un système d'exploitation correspondant (généralement des machines 32 bits).

- Ceci passera à la communauté mysql 5.6 et non 5.5 -

Cela a fonctionné pour moi après quelques recherches et une combinaison/correspondance/test des réponses trouvées sur diverses pages d’Internet (principalement à partir de cette page et http://dev.mysql.com/doc/refman/5.6/fr/ linux-installation-yum-repo.html ). Mon système d'exploitation livré avec mysql 5.1, je voulais avoir 5.6.

Mon système

[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

Il est installé sur un Mac Pro 1.1 2006 (processeurs mis à niveau à Intel Xeon X5365 Quad-Core à 3,0 GHz).

Commandes j'ai couru

Cela a été fait presque immédiatement après une nouvelle installation du système d'exploitation et de la mise à jour du système via yum

liste mysql actuellement installé

yum list installed | grep -i mysql

supprimer msql installé

yum remove mysql mysql-*

liste mysql actuellement installé

yum list installed | grep -i mysql

Téléchargez les rpm contenant mysql 5.6

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

Installez mysql

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

liste mysql actuellement installé

yum list installed | grep -i mysql

s'assurer que mysql démarre au redémarrage

chkconfig --list mysqld
Sudo chkconfig mysqld on
chkconfig --list mysqld

Démarrer mysql

service mysqld start
service mysqld status

Résultat

[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

mysql config (je ne l'ai pas encore touché mais l'info semble légitime)

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

Bonne chance!

Modifier

J'ai eu quelques problèmes lors de la création d'utilisateurs et de l'octroi d'autorisations, voici comment cela a été corrigé.

Erreur

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

Réparer

  1. Connecté sur le serveur en tant que root
  2. Connecté à mysql avec un simple mysql
  3. Vérifié le résultat de cette déclaration: SELECT COUNT(1) column_count FROM information_schema.columns WHERE table_schema='mysql' AND table_name='user'; Le résultat était 39, 43 est attendu pour mysql 5.6
  4. Émis cette instruction pour mettre à jour le mot de passe root: update mysql.user set Password=PASSWORD('root') where User='root';
  5. (Déconnecté de mysql avec exit)
  6. Mysql redémarré avec: service mysqld restart
  7. Ran: mysql_upgrade -uroot -proot --force
  8. Reconnecté à mysql avec mysql -uroot -proot
  9. Vérifié le résultat de cette déclaration: SELECT COUNT(1) column_count FROM information_schema.columns WHERE table_schema='mysql' AND table_name='user'; Le résultat était 43 comme prévu pour mysql 5.6. J'ai ensuite pu créer mes utilisateurs et accorder les autorisations nécessaires.
5
Raphvanns

Les réponses ci-dessus ne fonctionnaient pas pour moi (j'ai cette erreur - erreur: /var/tmp/rpm-tmp.tyukGy: pas un paquet rpm).

J'ai suivi ces étapes -

## 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

Extrait de - http://www.tecmint.com/install-mysql-on-rhel-centos-6-5-Fedora-17-12/

En faisant ce qui précède, j’ai désinstallé MySQL 5.0. * Et l’a remplacé par ceci -

[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]# 

Ma version 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
4
Quest Monger

Utiliser CentOS-Release-SCL est meilleur et facile.

Le référentiel des collections de logiciels (SCL)

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

Terminé.

3
C.M.Chiu

Ce blog m'a aidé à passer de MySQL 5.5.15 à 5.5.28. Cette mise à niveau avait également le problème avec mysql-libs en conflit avec mysql55-libs.

2
Toddius Zho
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
1
lanni654321