(一)MySQL-5.6.20的編譯安裝

來源:互聯網
上載者:User

標籤:安裝   配置   mysql   編譯   源碼   

     

    Mysql有通用二進位包安裝,源碼包編譯安裝或者利用YUM等包管理工具進行安裝等方法。在這裡,我們將使用源碼包編譯安裝。

 

一。安裝環境

Centos6.5 核心 2.6.32-431.el6.i686

mysql-5.6.20

 

二。安裝前準備

編譯安裝前需要準備好編譯環境,使用源碼安裝需要CMAKE(http://www.cmake.org)

,make,c++編譯器。

   yum install -y cmake make gcc

 

然後是擷取mysql的源碼包

http://dev.mysql.com/downloads/mysql/

我們選擇GA(通用)版本的MYSQL源碼包

   wget http://dev.mysql.com/get/Downloads/MySQL-5.6/mysql-5.6.20.tar.gz

 

三。安裝及其配置

 

#建立mysql使用者和使用者組以及安裝過程中所使用的檔案路徑

 groupadd mysql
 useradd -g mysql mysql
 mkdir -p /usr/local/mysql
 mkdir -p /home/mysql/{data,logs,temp}

#修改環境變數

vim /etc/profile
#在最後加入下列兩行:
     PATH=/usr/local/mysql/bin:/usr/local/mysql/lib:$PATH
     export PATH

#使設定檔立即生效

 source /etc/profile

#解壓安裝包

tar -xzf mysql-5.6.20.tar.gz

#進入mysql目錄

 cd mysql-5.6.20

 

#使用CMAKE安裝MYSQL

cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_UNIX_ADDR=/usr/local/mysql/mysql.sock -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DWITH_MYISAM_STORAGE_ENGINE=1 -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_ARCHIVE_STORAGE_ENGINE=1 -DWITH_BLACKHOLE_STORAGE_ENGINE=1 -DWITH_MEMORY_STORAGE_ENGINE=1 -DWITH_READLINE=1 -DENABLED_LOCAL_INFILE=1 -DMYSQL_DATADIR=/home/mysql/data -DMYSQL_USER=mysql -DMYSQL_TCP_PORT=3306 -DENABLE_DOWNLOADS=1

#編譯選項詳細資料

http://dev.mysql.com/doc/refman/5.6/en/source-configuration-options.html#option_cmake_cmake_install_prefix

 

根據編譯結果查看是否有錯誤,我在編譯的過程中發現少了ncurses-devel,用yum安裝即可,然後rm CMakeCache.txt後繼續編譯,直到沒有錯誤為止。

編譯結束後 用命令

 echo $?

查看結果應該為0

#編譯安裝

make && make install

編譯過程有點長。

如果需要重裝mysql,在/usr/local/src/mysql-5.6.20在執行下make install就可以了

#清除安裝臨時檔案

make clean

#設定許可權

chown -R mysql:mysql /usr/local/mysqlchown -R mysql:mysql /home/mysql

#初始化資料庫

/usr/local/mysql/scripts/mysql_install_db --user=mysql --datadir=/home/mysql/data --basedir=/usr/local/mysql --collation-server=utf8_general_ci

 

其中collation-server選項是用來設定資料庫預設排序方式的。

初始化指令碼在/usr/local/mysql/下產生了設定檔my.cnf,需要更改該設定檔的所有者:

chown mysql:mysql /usr/local/mysql/my.cnf

需要注意的是如果原先系統就要該檔案,需要將其改名或刪除,否則會干擾MySQL的使用。

 

#修改設定檔

 

mv /usr/local/mysql/my.cnf /usr/local/mysql/my.cnf.bakvim /etc/my.cnf

 我們將原先的/usr/local/mysql/my.cnf下的設定檔名進行修改或者刪除,然後再/etc目錄下建立新的設定檔更有利於管理

 

[mysqld]
datadir=/home/mysql/data
socket=/usr/local/mysql/mysql.sock
user=mysql
# Disabling symbolic-links is recommended to prevent assorted security risks
symbolic-links=0
log-error= /home/mysql/logs/mysql_error.log

[mysqld_safe]
log-error=/home/mysql/logs/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid

[client]
socket =/usr/local/mysql/mysql.sock
port =3306

 

我在進行此步驟中出現了一些錯誤,調試花了很多時間。最後發現socket檔案路徑設定需要格外注意,否則會出現mysql無法啟動等問題。

如果啟動Mysql過程中出錯,可自行到/home/mysql/logs/mysql_error.log中進行查看,當然你也可以自行設定錯誤記錄檔的存放位置。

 

#複製服務啟動指令碼

cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysql

    #mysql安全設定(設定密碼,清除匿名使用者等)

 /usr/local/mysql/bin/mysql_secure_installation

 

#啟動MySQL服務

service mysql start

 

#設定開機自動啟動服務

chkconfig --add mysqlchkconfig mysql on

 

至此,你就可以享受最新版的Mysql了!

本文出自 “加速@世界” 部落格,請務必保留此出處http://jasonlee888.blog.51cto.com/6432756/1557128

(一)MySQL-5.6.20的編譯安裝

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

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.