This article records the process of upgrading MySQL 5.1 to 5.5.36 in the CentOS 6.4 environment. I hope it can 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, 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 MySQL 5.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 with cmake, 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 copy the previously backed up my.cnf file 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 start MySQL and find a problem. Starting MySQL prompts: The server quit without updating PID file (…) failed Check the log file address /var/log/mysqld.log set in 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 character set of [mysqld] in the /etc/my.cnf configuration file. The solution is to change default-character-set=utf8 to character_set_server=utf8 7. Connect to mysql through the mysql -u root -p command. (We have installed MySQL before, and the database files are still there, so there is no need to add users to set 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) You may also be interested in:
|
<<: An example of how to use nginx to configure multiple laravel projects with one domain name
>>: React+Antd implements an example of adding, deleting and modifying tables
1. Changes in MySQL's default storage engine ...
Table of contents App Update Process Rough flow c...
As a Vue user, it's time to expand React. Fro...
Table of contents Preparation Install VMware Work...
This article example shares the specific implemen...
CSS Layout - position Property The position attri...
Table of contents Vue2.x Usage Global Registratio...
The target attribute of a link determines where th...
This work uses the knowledge of front-end develop...
Today is still a case of Watch app design. I love...
This article records the VMware Workstation 12 Pr...
The HTML code for intercepting text beyond multipl...
Table of contents 1. Reverse the numbers 2. Get t...
Today, when I was using Nginx, a 500 error occurr...
Primary Key: Keyword: primary key Features: canno...