首頁  >  文章  >  資料庫  >  MySQL5.1如何在CentOS系統中升級至5.5.36的範例詳解

MySQL5.1如何在CentOS系統中升級至5.5.36的範例詳解

黄舟
黄舟原創
2017-07-17 14:34:231387瀏覽

有相關測試資料說明從5.1到5.5+,MySQL效能會有明顯的提升,具體的需要自己建立測試環境去實踐下,今天我們就來操作下,並記錄下來升級的具體步驟

記錄CentOS 6.4環境將MySQL5.1升級至5.5.36的流程,希望對大家有個參考。

1.為了安全期間,首先需要備份原有資料

2.卸載原有MySQL,先停止原有的MySQL服務,再找找find / -name mysql

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

/var/lib/mysql

/var/lib/mysql/mysql

/usr/lib64/mysql

並移除服務

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

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

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

3.安裝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.下載安裝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

在cmake的過程中出錯了,提示Could NOT find Curses (missing:  CURSES_LIBRARY CURSES_INCLUDE_PATH)

執行以下程式碼就可以了,執行好之後繼續cmake,然後再make && make install

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

5.接下來需要把之前備份下來的接下來需要把之前備份下來的my.cnf文件,複製至/etc/my.cnf

MySQL會讀取/etc/my.cnf /etc/mysql/my.cnf /usr/local/mysql/etc/my.cnf / .my.cnf。左邊的檔案優先權是最高的

6.設定好之後,我們就啟動mysql,發現有一個問題啟動MySQL提示:The server quit without updating PID file(…)失敗

查看my.cnf檔案設定的日記檔案位址/var/log/mysqld.log,錯誤提示如下

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

此報錯是由/etc/my.cnf設定文件下的[mysqld]設定字元集引起的,解決方法:將default-character-set=utf8 改為character_set_server=utf8

#7.透過mysql -u root - p指令連接mysql。 (我們之前有安裝過mysql,資料庫檔案還在,所以不需要再新增使用者設定權限了)

出現了錯誤訊息:ERROR 2002 (HY000 ): Can't connect to local MySQL server through socket '/tmp/mysql.sock'

出錯原因是我們mysql.sock檔案在/usr/lib/mysql/資料夾下

可以嘗試透過下面命令連接,並查看mysql版本

[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)

以上是MySQL5.1如何在CentOS系統中升級至5.5.36的範例詳解的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn