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
First we need to install some dependencies npm i ...
Definition of Float Sets the element out of the n...
Preface: In the previous article, we mainly intro...
Preface When sharing a page, you hope to click th...
Table of contents The difference between hash and...
This article example shares the specific code of ...
The upload form with image preview function, the ...
The JavaScript hasOwnProperty() method is the pro...
Windows: Support NTFS, FAT Linux supports file fo...
Table of contents Preface SQL statement optimizat...
This article shares the specific code of JavaScri...
Solution Add position:relative to the parent elem...
width: auto The child element (including content+...
Preface In actual business, paging is a common bu...