SUSE Linux源碼編譯安裝MySQL 5.6,susemysql

來源:互聯網
上載者:User

SUSE Linux源碼編譯安裝MySQL 5.6,susemysql

這篇文章主要介紹了SUSE Linux下源碼編譯方式安裝MySQL 5.6過程分享,本文使用SUSE Linux Enterprise Server 10 SP3 (x86_64)系統,需要的朋友可以參考下.MySQL為開來源資料庫,因此可以基於源碼實現安裝。基於源碼安裝有更多的靈活性。也就是說我們可以針對自己的硬體平台選用合適的編譯器來最佳化編譯後的二進位代碼,根據不同的軟體平台環境調整相關的編譯參數,選擇自身需要選擇不同的安裝組件,設定需要的字元集等等一些可以根據特定應用情境所作的各種調整。本文描述了如何在源碼方式下安裝MySQL。

1、安裝環境及介質

SZDB:~ # cat /etc/issueWelcome to SUSE Linux Enterprise Server 10 SP3 (x86_64) - Kernel \r (\l).SZDB:~ # uname -aLinux SZDB 2.6.16.60-0.54.5-smp #1 SMP Fri Sep 4 01:28:03 UTC 2009 x86_64 x86_64 x86_64 GNU/Linux#安裝介質,可以到以下網址下載安裝介質,注意下載時選擇source code,目前的版本為5.6.17#根據你自身的環境下載相應的安裝介質,本文示範的安裝介質為Generic Linux (Architecture Independent), mysql-5.6.17.tar.gzhttp://dev.mysql.com/downloads/mysql#源碼安裝方式官方網站連結: http://dev.mysql.com/doc/refman/5.6/en/installing-source-distribution.html

2、系統需求

Source Installation System Requirements

  Installation of MySQL from source requires several development tools. Some of these tools are needed no matter whether you use a standard source distribution or a development source tree. Other tool requirements depend on which installation method you use.

To install MySQL from source, your system must have the following tools, regardless of installation method:CMake, which is used as the build framework on all platforms. CMake can be downloaded from http://www.cmake.org.A good make program. Although some platforms come with their own make implementations, it is highly recommended that you use GNU make 3.75 or newer. It may already be available on your system as gmake. GNU make is available from http://www.gnu.org/software/make/.A working ANSI C++ compiler. GCC 4.2.1 or later, Sun Studio 12 or later, Visual Studio 2010 or later, and many current vendor-supplied compilers are known to work.Perl is needed if you intend to run test scripts. Most Unix-like systems include Perl. On Windows, you can use a version such as ActiveState Perl.#使用源碼安裝上面的一些開發工具是需要的,比較重要的一個是Cmake工具,通常情況下os並沒有安裝,需要手動安裝。#如果沒有cmake會收到這個錯誤提示:(-bash: cmake: command not found)

3、安裝cmake

#可以到這裡下載cmake,我這裡下載的是2.6.4版本

http://www.cmake.org/cmake/resources/software.htmlSZDB:~ # cd /usr/local/src/mysql_srcSZDB:/usr/local/src/mysql_src # tar -xvf cmake-2.6.4.tar.gzSZDB:/usr/local/src/mysql_src # cd cmake-2.6.4SZDB:/usr/local/src/mysql_src/cmake-2.6.4 # ./bootstrap  SZDB:/usr/local/src/mysql_src/cmake-2.6.4 # ./makeSZDB:/usr/local/src/mysql_src/cmake-2.6.4 # ./make install

4、安裝MySQL

SZDB:~ # groupadd mysqlSZDB:~ # useradd -r -g mysql mysqlSZDB:~ # cd /usr/local/src/mysql_srcSZDB:/usr/local/src/mysql_src # tar -xvf mysql-5.6.17.tar.gz SZDB:/usr/local/src/mysql_src # lsmysql-5.6.17  mysql-5.6.17.tar.gzSZDB:/usr/local/src/mysql_src # cd mysql-5.6.17/SZDB:/usr/local/src/mysql_src/mysql-5.6.17 # cmake .             ..........  -- Check size of wint_t - done  -- Could NOT find Curses  (missing:  CURSES_LIBRARY CURSES_INCLUDE_PATH)  CMake Error at cmake/readline.cmake:85 (MESSAGE):                 Author : Leshami    Curses library not found.  Please install appropriate package,  Blog   :http://blog.csdn.net/leshami    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:411 (MYSQL_CHECK_EDITLINE)#如果cmake期間碰到上述錯誤,應該安裝ncurses-devel rpm包,然後移除CMakeCache.txt-- Configuring incomplete, errors occurred!#如有沒有對應的os安裝光碟片,可以從下面的連結下載這個rpm包,注意對應的版本號碼應一致http://www.filewatcher.com/m/ncurses-devel-5.5-18.11.x86_64.rpm.735840-0.htmlSZDB:/usr/local/src/mysql_src # rpm -Uvh ncurses-devel-5.5-18.11.x86_64.rpmPreparing...                ########################################### [100%]   1:ncurses-devel          ########################################### [100%]SZDB:/usr/local/src/mysql_src/mysql-5.6.17 # rm -rf CMakeCache.txtSZDB:/usr/local/src/mysql_src/mysql-5.6.17 # cmake .      #再次執行cmake                    ........   -- Library mysqlserver depends on OSLIBS -lpthread;m;rt;crypt;dl;aio   -- Configuring done   -- Generating done   -- Build files have been written to: /usr/local/src/mysql_src/mysql-5.6.17SZDB:/usr/local/src/mysql_src/mysql-5.6.17 # make   Linking CXX executable mysqltest_embedded   [100%] Built target mysqltest_embedded   Scanning dependencies of target my_safe_process   [100%] Building CXX object mysql-test/lib/My/SafeProcess/CMakeFiles/my_safe_process.dir/safe_process.cc.o   Linking CXX executable my_safe_process   [100%] Built target my_safe_processSZDB:/usr/local/src/mysql_src/mysql-5.6.17 # make installSZDB:/usr/local/src/mysql_src/mysql-5.6.17 # cd /usr/local/mysqlSZDB:/usr/local/mysql # chown -R mysql .SZDB:/usr/local/mysql # chgrp -R mysql .SZDB:/usr/local/mysql # scripts/mysql_install_db --user=mysql                    ..........    To start mysqld at boot time you have to copy    support-files/mysql.server to the right place for your system   PLEASE REMEMBER TO SET A PASSWORD FOR THE MySQL root USER !    To do so, start the server, then issue the following commands:       ./bin/mysqladmin -u root password 'new-password'      ./bin/mysqladmin -u root -h SZDB password 'new-password'       Alternatively you can run:     ./bin/mysql_secure_installation which will also give you the option of removing the test    databases and anonymous user created by default.  This is    strongly recommended for production servers.    See the manual for more instructions.
  You can start the MySQL daemon with:cd . ; ./bin/mysqld_safe &You can test the MySQL daemon with mysql-test-run.pl cd mysql-test ; perl mysql-test-run.plNew default config file was created as ./my.cnf andwill be used by default by the server when you start it. You may edit this file to change server settings   ..........SZDB:/usr/local/mysql # chown -R root .SZDB:/usr/local/mysql # chown -R mysql data     SZDB:/usr/local/mysql # cp support-files/mysql.server /etc/init.d/mysql.server  #配置自啟動SZDB:/usr/local/mysql # cp support-files/my-default.cnf /etc/my.cnf             #添加預設的my.cnf設定檔  SZDB:/usr/local/mysql # bin/mysqld_safe --user=mysql &                          #啟動mysql[1] 21004SZDB:/usr/local/mysql # 140521 02:54:54 mysqld_safe Logging to '/usr/local/mysql/data/SZDB.err'.140521 02:54:54 mysqld_safe Starting mysqld daemon with databases from /usr/local/mysql/data#配置環境變數,通過軟鏈或者修改環境變數實現(PATH=$PATH:/usr/local/mysql/bin/;export PATH)SZDB:~ # ln -fs /usr/local/mysql/bin/mysql /usr/local/bin  SZDB:~ # ln -fs /usr/local/mysql/bin/mysqladmin /usr/local/bin  SZDB:~ # ln -fs /usr/local/mysql/bin/mysqld_safe /usr/local/bin #登陸到mysqlSZDB:/usr/local/bin # mysql -urootWelcome to the MySQL monitor.  Commands end with ; or \g.Your MySQL connection id is 1Server version: 5.6.17 Source distributionCopyright (c) 2000, 2014, Oracle and/or its affiliates. All rights reserved.Oracle is a registered trademark of Oracle Corporation and/or itsaffiliates. Other names may be trademarks of their respectiveowners.Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.mysql> show databases;+--------------------+| Database           |+--------------------+| information_schema || mysql              || performance_schema || test               |+--------------------+4 rows in set (0.00 sec)


著作權聲明:本文為博主原創文章,未經博主允許不得轉載。

相關文章

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.