Home >Database >Mysql Tutorial >Detailed example of how to upgrade MySQL5.1 to 5.5.36 in CentOS system

Detailed example of how to upgrade MySQL5.1 to 5.5.36 in CentOS system

黄舟
黄舟Original
2017-07-17 14:34:231459browse

There are relevant test data indicating that MySQL performance will be significantly improved from 5.1 to 5.5+. Specifically, you need to set up a test environment to practice it. Today we will do it and record the specific steps of the upgrade

Record the process of upgrading MySQL 5.1 to 5.5.36 in CentOS 6.4 environment. I hope it will be a reference for everyone.

1. For safety reasons, you first need to back up the original data

2. Uninstall the original MySQL, stop the original MySQL service first, and then search find / -name mysql

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

/var/lib/mysql

/var/lib/mysql/mysql

/usr/lib64/mysql

And remove the service

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

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

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

3. Install 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. Download and install 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

An error occurred during the cmake process, prompting Could NOT find Curses (missing: CURSES_LIBRARY CURSES_INCLUDE_PATH)

Just execute the following code. After execution, continue cmake, and then make && make install

[root@localhost mysql-5.5.36]# rm CMakeCache.txt
[root@localhost mysql-5.5.36]# yum install ncurses-devel

5. Next, you need to backup the previous my.cnf file, copy to /etc/my.cnf

MySQL will read /etc/my.cnf /etc/mysql/my.cnf /usr/local/mysql/etc/my.cnf / .my.cnf. The file on the left has the highest priority .

6. After configuration, we started mysql and found a problem when starting MySQL: The server quit without updating PID file (...) failed

Check the log file address /var/log/mysqld.log set by the my.cnf file. The error message is as follows

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 'default-character-set=utf8'
170715 12:57:49 [ERROR] Aborting

This error is caused by the /etc/my.cnf configuration file Caused by the [mysqld] setting character set under , the solution: change default-character-set=utf8 to character_set_server=utf8

7. Pass mysql -u root - The p command connects to mysql. (We have installed mysql before, and the database file is still there, so there is no need to Add usersset permissions)

An error message appeared: ERROR 2002 (HY000 ): Can't connect to local MySQL server through socket '/tmp/mysql.sock'

The reason for the error is that our mysql.sock file is in the /usr/lib/mysql/ folder

You can try to connect through the following command and check the mysql version

[root@linuxidc var]# mysql -u root -p -S /usr/lib/mysql/mysql.sock
mysql> select version();
+-----------+
| version() |
+-----------+
| 5.5.36    |
+-----------+
1 row in set (0.00 sec)

The above is the detailed content of Detailed example of how to upgrade MySQL5.1 to 5.5.36 in CentOS system. For more information, please follow other related articles on the PHP Chinese website!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn