Home > Database > Mysql Tutorial > body text

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

黄舟
Release: 2017-07-17 14:34:23
Original
1224 people have browsed it

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
Copy after login

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
Copy after login

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
Copy after login

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
Copy after login

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
Copy after login

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
Copy after login

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)
Copy after login

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!

Related labels:
source:php.cn
Statement of this Website
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 [email protected]
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template
About us Disclaimer Sitemap
php.cn:Public welfare online PHP training,Help PHP learners grow quickly!