centos
 mysql5.6.27
 1编译安装
 先进入到文件放置的路径下
 创建一个个文件
 #mkdir–p /data/mysql/mysql
 #mkdir–p /data/mysql/mysqldat
 2创建用户和用户组
 groupadd mysql
 useradd -r -g mysql mysql
 3赋予数据存放目录权限
 chown mysql:mysql -R /data/mysql/mysqldata/
 4解压
 tar -xvf mysql-5.6.27.tar.gz
 5安装cmake
 yum -install cmake -y
 cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_DATADIR=/mysql/data -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DWITH_EXTRA_CHARSETS:STRING=all -DWITH_DEBUG=0 -DENABLED_LOCAL_INFILE=1
 – Running cmake version 2.8.12.2
 – Could NOT find Git (missing: GIT_EXECUTABLE)
 – The C compiler identification is unknown
 – The CXX compiler identification is unknown
 CMake Error: your C compiler: “CMAKE_C_COMPILER-NOTFOUND” was not found. Please set CMAKE_C_COMPILER to a valid compiler path or name.
 CMake Error: your CXX compiler: “CMAKE_CXX_COMPILER-NOTFOUND” was not found. Please set CMAKE_CXX_COMPILER to a valid compiler path or name.
 CMake Error at cmake/os/Linux.cmake:27 (STRING):
 string sub-command REPLACE requires at least four arguments.
 Call Stack (most recent call first):
 CMakeLists.txt:149 (INCLUDE)
 CMake Error at cmake/os/Linux.cmake:27 (STRING):
 string sub-command REPLACE requires at least four arguments.
 Call Stack (most recent call first):
 CMakeLists.txt:149 (INCLUDE)
 – MySQL 5.6.27
 – Packaging as: mysql-5.6.27-Linux-i686
 – Could NOT find Threads (missing: Threads_FOUND)
 – Could NOT find Threads (missing: Threads_FOUND)
 – Check if the system is big endian
 – Searching 16 bit integer
 CMake Error at /usr/share/cmake/Modules/TestBigEndian.cmake:44 (message):
 no suitable type found
 Call Stack (most recent call first):
 configure.cmake:628 (TEST_BIG_ENDIAN)
 CMakeLists.txt:398 (INCLUDE)
 – Configuring incomplete, errors occurred!
 See also “/usr/local/src/mysql-5.6.27/CMakeFiles/CMakeOutput.log”.
 See also “/usr/local/src/mysql-5.6.27/CMakeFiles/CMakeError.log”.
 分析:
 – Could NOT find Git (missing: GIT_EXECUTABLE)这项应该缺少git包,yum install -y git
 – The C compiler identification is unknown
 – The CXX compiler identification is unknown 这两项缺少gcc和gcc-c++的包,yum install -y gcc gcc-c++
 另外需要rm CMakeCache.txt
 继续
 cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_DATADIR=/mysql/data -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DWITH_EXTRA_CHARSETS:STRING=all -DWITH_DEBUG=0 -DWITH_SSL=yes -DWITH_READLINE=1 -DENABLED_LOCAL_INFILE=1
 出现错误:
 CMake Error: The following variables are used in this project, but they are set to NOTFOUND.
 Please set them or make sure they are set and tested correctly in the CMake files:
 OPENSSL_INCLUDE_DIR
 used as include directory in directory /usr/local/src/mysql-5.6.27/CMakeFiles/CMakeTmp
 CMake Error: Internal CMake error, TryCompile configure of cmake failed
 – Check size of wchar_t - failed
 – Check size of wctype_t
 CMake Error: The following variables are used in this project, but they are set to NOTFOUND.
 Please set them or make sure they are set and tested correctly in the CMake files:
 OPENSSL_INCLUDE_DIR
 used as include directory in directory /usr/local/src/mysql-5.6.27/CMakeFiles/CMakeTmp
 CMake Error: Internal CMake error, TryCompile configure of cmake failed
 – Check size of wctype_t - failed
 – Check size of wint_t
 CMake Error: The following variables are used in this project, but they are set to NOTFOUND.
 Please set them or make sure they are set and tested correctly in the CMake files:
 OPENSSL_INCLUDE_DIR
 used as include directory in directory /usr/local/src/mysql-5.6.27/CMakeFiles/CMakeTmp
 CMake Error: Internal CMake error, TryCompile configure of cmake failed
 – Check size of wint_t - failed
 – Could NOT find Curses (missing: CURSES_LIBRARY CURSES_INCLUDE_PATH)
 CMake Error at cmake/readline.cmake:85 (MESSAGE):
 Curses library not found. Please install appropriate package,
 remove CMakeCache.txt and rerun cmake.On Debian/Ubuntu, package name is libncurses5-dev, on Redhat and derivates it is ncurses-devel.
 Call Stack (most recent call first):
 cmake/readline.cmake:128 (FIND_CURSES)
 cmake/readline.cmake:202 (MYSQL_USE_BUNDLED_EDITLINE)
 CMakeLists.txt:409 (MYSQL_CHECK_EDITLINE)
 – Configuring incomplete, errors occurred!
 See also “/usr/local/src/mysql-5.6.27/CMakeFiles/CMakeOutput.log”.
 See also “/usr/local/src/mysql-5.6.27/CMakeFiles/CMakeError.log”.
 分析:
 – Could NOT find Curses (missing: CURSES_LIBRARY CURSES_INCLUDE_PATH)
 缺少ncurses-devel包,yum install -y ncurses-devel
 rm CMakeCache.txt
通过阅读官方文件http://dev.mysql.com/doc/refman/5.6/en/source-configuration-options.html,去除选项-DWITH_READLINE=1和-DWITH_SSL=YES
 重新
 cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_DATADIR=/data/mysql -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DWITH_EXTRA_CHARSETS:STRING=all -DWITH_DEBUG=0 -DENABLED_LOCAL_INFILE=1
 出现warning:
 – Running cmake version 2.8.12.2
 – MySQL 5.6.27
 – Packaging as: mysql-5.6.27-Linux-x86_64
 – HAVE_VISIBILITY_HIDDEN
 – HAVE_VISIBILITY_HIDDEN
 – HAVE_VISIBILITY_HIDDEN
 – Using cmake version 2.8.12.2
 – Not building NDB
 – Library mysqlclient depends on OSLIBS -lpthread;m;rt;dl
 Warning: Bison executable not found in PATH
 – Library mysqlserver depends on OSLIBS -lpthread;m;rt;crypt;dl
 – CMAKE_BUILD_TYPE: RelWithDebInfo
 – COMPILE_DEFINITIONS: HAVE_CONFIG_H
 – CMAKE_C_FLAGS: -Wall -Wextra -Wformat-security -Wvla -Wwrite-strings -Wdeclaration-after-statement
 – CMAKE_CXX_FLAGS: -Wall -Wextra -Wformat-security -Wvla -Woverloaded-virtual -Wno-unused-parameter
 – CMAKE_C_FLAGS_RELWITHDEBINFO: -O3 -g -fabi-version=2 -fno-omit-frame-pointer -fno-strict-aliasing -DDBUG_OFF
 – CMAKE_CXX_FLAGS_RELWITHDEBINFO: -O3 -g -fabi-version=2 -fno-omit-frame-pointer -fno-strict-aliasing -DDBUG_OFF
 – Configuring done
 – Generating done
 – Build files have been written to: /usr/local/src/mysql-5.6.27
 分析:Warning: Bison executable not found in PATH 缺少Bison,yum install -y bison
 cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_DATADIR=/data/mysql -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DWITH_EXTRA_CHARSETS:STRING=all -DWITH_DEBUG=0 -DENABLED_LOCAL_INFILE=1
 echo $? 是0代表OK
 6.make && make install
 7.chown -R mysql:mysql /usr/local/mysql/
 8.cd /usr/local/mysql/
 9. ./scripts/mysql_install_db --user=mysql --datadir=/data/mysql 初始化
 10. cp support-files/my-default.cnf /etc/my.cnf
 11. cp support-files/mysql.server /etc/init.d/mysqld
 12. chmod 755 /etc/init.d/mysqld
 13.vim /etc/init.d/mysqld 修改datadir=/data/mysql
 14.service mysqld start
 15ln -s /usr/local/mysql/bin/mysql /usr/bin
 16mysql -u root -p没密码
 成功启动Starting MySQL… SUCCESS!
