Maison  >  Article  >  base de données  >  Exemple détaillé de la mise à niveau de MySQL5.1 vers 5.5.36 dans le système CentOS

Exemple détaillé de la mise à niveau de MySQL5.1 vers 5.5.36 dans le système CentOS

黄舟
黄舟original
2017-07-17 14:34:231366parcourir

Les données de test pertinentes montrent que les performances de MySQL seront considérablement améliorées de 5.1 à 5.5+. Plus précisément, vous devez configurer un environnement de test pour le pratiquer. Aujourd'hui, nous allons le faire et enregistrer les étapes spécifiques de la mise à niveau

.

Enregistrez le processus de mise à niveau de MySQL5.1 vers 5.5.36 dans l'environnement CentOS 6.4. J'espère que ce sera une référence pour tout le monde.

1. Pour des raisons de sécurité, vous devez d'abord sauvegarder les données d'origine

2 Désinstallez MySQL d'origine, arrêtez d'abord le service MySQL d'origine, puis recherchez find / -name mysql.

[root@linuxidc /]# find / -name mysql

/var/lib/mysql

/var/lib/mysql/mysql

/usr/lib64/mysql

et supprimez le service

[root@linuxidc /]# rm -rf /var/lib/mysql

[root@linuxidc /]# rm -rf /var/lib/mysql

[root@linuxidc /]# rm -rf /usr/lib64/mysql

3. Installez cmake

[root@linuxidc download]# wget http://www.cmake.org/files/v2.8/cmake-2.8.12.2.tar.gz

[root@linuxidc download]# tarx zvfc cmake-2.8.12.2.tar.gz

[root@linuxidc download]# cd cmake-2.8.12.2

[root@linuxidc cmake-2.8.12.2]# ./configure

[root@linuxidc cmake-2.8.12.2]# make && make install

4. Téléchargez et installez MySQL5.5.36

[root@linuxidc download]# wget http://dev.mysql.com/get/Downloads/MySQL-5.5/mysql-5.5.36.tar.gz

[root@linuxidc download]# tar xzvf mysql-5.5.36.tar.gz

[root@linuxidc download]# cd mysql-5.5.36

[root@linuxidc mysql-5.5.36]# cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DEXTRA_CHARSETS=all -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DWITH_READLINE=1 -DWITH_SSL=system -DWITH_ZLIB=system -DWITH_EMBEDDED_SERVER=1 -DENABLED_LOCAL_INFILE=1 -DMYSQL_DATADIR=/home/mysql

[root@linuxidc mysql-5.5.36]# make && make install

dans cmake Une erreur s'est produite pendant le processus, demandant Impossible de trouver les malédictions (manquant : CURSES_LIBRARY CURSES_INCLUDE_PATH)

Exécutez simplement le code suivant après l'exécution, continuez cmake, puis make && make install

<.>
[root@localhost mysql-5.5.36]# rm CMakeCache.txt
[root@localhost mysql-5.5.36]# yum install ncurses-devel
5. Ensuite, vous devez copier le fichier my.cnf précédemment sauvegardé dans /etc/my.cnf

MySQL lira /etc/my.cnf /etc/mysql/my. cnf /usr/local/mysql/etc/my.cnf/.my.cnf. Le fichier de gauche

a la priorité la plus élevée

6. Après la configuration, nous avons démarré MySQL et avons trouvé un problème lors du démarrage de l'invite MySQL : Le serveur s'est arrêté sans mettre à jour le fichier PID (…) a échoué

Vérifiez l'adresse du fichier journal /var/log/mysqld.log définie par le fichier my.cnf. Le message d'erreur est le suivant

170715 12:31:36 mysqld_safe mysqld from pid file /var/lib/mysql/linuxidc.pid ended
170715 12:57:48 mysqld_safe Starting mysqld daemon with databases from /home/mysql
170715 12:57:48 InnoDB: The InnoDB memory heap is disabled
170715 12:57:48 InnoDB: Mutexes and rw_locks use GCC atomic builtins
170715 12:57:48 InnoDB: Compressed tables use zlib 1.2.3
170715 12:57:48 InnoDB: Initializing buffer pool, size = 128.0M
170715 12:57:48 InnoDB: Completed initialization of buffer pool
170715 12:57:48 InnoDB: highest supported file format is Barracuda.
170715 12:57:48  InnoDB: Waiting for the background threads to start
170715 12:57:49 InnoDB: 5.5.36 started; log sequence number 2645823
170715 12:57:49 [ERROR] /usr/local/mysql/bin/mysqld: unknown variable &#39;default-character-set=utf8&#39;
170715 12:57:49 [ERROR] Aborting
Cette erreur est causée par /etc/my. .cnf

Causé par le paramètre [mysqld] jeu de caractères sous le fichier de configuration La solution : remplacez default-character-set=utf8 par Character_set_server=utf8

7. . Passez mysql -u La commande root -p se connecte à mysql. (Nous avons déjà installé MySQL et le fichier de base de données est toujours là, il n'est donc pas nécessaire d'

ajouter des utilisateurs pour définir les autorisations)

Un

message d'erreur apparaît : ERREUR 2002 (HY000) ): Impossible de se connecter au serveur MySQL local via le socket '/tmp/mysql.sock'

La raison de l'erreur est que notre fichier mysql.sock se trouve dans /usr/lib /mysql/ dossier

Vous pouvez essayer de vous connecter via la commande suivante et vérifier la version mysql

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn