一、系統版本php
Centos6.7 64位mysql
二、Mysql版本sql
mysql-5.6.28數據庫
三、需上傳的源碼包(建議全部的源碼包都上傳到/usr/local/src,這樣不會亂)服務器
四、http://cdn.mysql.com//archives/mysql-5.6/mysql-5.6.28.tar.gzapp
mysql-5.6.28.tar.gzide
https://cmake.org/files/v3.6/cmake-3.6.1.tar.gzes5
cmake-3.6.1.tar.gzspa
1、安裝cmake軟件orm
1)、進入上傳包目錄解壓cmake
tar zxvf cmake-3.6.1.tar.gz
2)、進入解壓文件,並進行配置、編譯、安裝。
cd cmake-3.6.1
./configure–prefix=/usr/local/cmake //指定文件安裝目錄
make
make install
3)、建立連接文件
ln –s /usr/local/cmake/bin/cmake /usr/bin/cmake
2、安裝mysql5.6
1)、進入上傳包目錄解壓mysql5.6,並建立目錄
Mkdir –p /usr/local/mysql
Mkdir –p /data/mysql/
tar zxvf mysql-5.6.28.tar.gz
2)、進入解壓文件,並進行配置、編譯、安裝。
cd mysql-5.6.28 cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql\ -DMYSQL_UNIX_ADDR=/tmp/mysql.sock \ -DDEFAULT_CHARSET=utf8 \ -DDEFAULT_COLLATION=utf8_general_ci \ -DWITH_EXTRA_CHARSETS:STRING=utf8,gbk \ -DWITH_MYISAM_STORAGE_ENGINE=1 \ -DWITH_INNOBASE_STORAGE_ENGINE=1 \ -DWITH_MEMORY_STORAGE_ENGINE=1 \ -DWITH_READLINE=1 \ -DENABLED_LOCAL_INFILE=1 \ -DMYSQL_DATADIR=/data/mysql \ -DMYSQL_USER=mysql make && make install
參數說明:
3 更改並啓動數據庫
1)修改mysql的屬組
chown –R mysql:mysql /data/mysql/ chown -R mysql:mysql/usr/local/mysql/
2)、初始化數據庫
/usr/local/mysql/scripts/mysql_install_db \ --user=mysql \ --basedir=/usr/local/mysql/ \ --datadir=/data/mysql
3)、複製配置文件,並啓動mysql
cp support-files/my-default.cnf/etc/my.cnf cp /etc/init.d/mysqld/root/mysqld_5.1_bak cp support-files/mysql.server /etc/init.d/mysqld chmod +x /etc/init.d/mysql /etc/init.d/mysqld start
4 登陸數據庫
/usr/local/mysql/bin/mysql
5 總結遇到的錯誤:
1) 編譯mysql遇到的錯誤:
--Could NOT find Curses (missing: CURSES_LIBRARY CURSES_INCLUDE_PATH) CMake Errorat cmake/readlineNaNake:64(MESSAGE): Curses library notfound. Please install appropriate package,remove CMakeCache.txt andrerun cmake.On Debian/Ubuntu, packagename is libncurses5-dev, on Redhat andderivates it is ncurses-devel. Call Stack (most recent call first): cmake/readlineNaNake:107(FIND_CURSES) cmake/readlineNaNake:181(MYSQL_USE_BUNDLED_EDITLINE) CMakeLists.txt:480(MYSQL_CHECK_EDITLINE) -- Configuring incomplete, errors occurred! See also "/mydata/mysql-5.7.6-m16/CMakeFiles/CMakeOutput.log".See also "/mydata/mysql-5.7.6-m16/CMakeFiles/CMakeError.log".
解決辦法:yum -y install ncurses-devel
2) 登陸mysql的時候遇到的錯誤:
/usr/local/mysql/bin/mysql
Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 8 Server version: 5.6.24 Source distribution Copyright (c) 2000, 2015, Oracle and/or its affiliates. All rights reserved. Oracle is a registered trademark of Oracle Corporation and/or its affiliates. Other names may be trademarks of their respective owners. Segmentation fault
mysql版本是5.6.24
服務器是CentOS6.0
解決方法 :
在源碼包裏,編輯文件 cmd-line-utils/libedit/terminal.c
把terminal_set方法中的 char buf[TC_BUFSIZE]; 這一行註釋,再把 area = buf;改成 area = NULL;
更改後以下:
protected int terminal_set(EditLine *el, const char *term) { int i; /*char buf[TC_BUFSIZE];*/ ##註釋掉 char *area; const struct termcapstr *t; sigset_t oset, nset; int lins, cols; --phpfensi.com (void) sigemptyset(&nset); (void) sigaddset(&nset, SIGWINCH); (void) sigprocmask(SIG_BLOCK, &nset, &oset); area = NULL;
而後從新編譯mysql便可