天天看點

mysql5.5資料庫cmake源碼編譯安裝

是以這篇文章主要是講解如何通過cmkae編譯安裝mysql5.5及其以後的版本。

注意本篇文章的環境為centos6.5 64bit。

cat /etc/system-release

uname -a

mysql5.5資料庫cmake源碼編譯安裝

在安裝mysql資料庫之前,我們首先要在系統中建立mysql運作時的使用者mysql。如下:

useradd -m -s /sbin/nologin mysql

grep mysql /etc/passwd

cat /etc/passwd |grep mysql

grep mysql /etc/group

mysql5.5資料庫cmake源碼編譯安裝

注意useradd -m -s /sbin/nologin mysql,這條指令中的-m參數,該參數的意思是在建立使用者時不為該使用者建立其對應的家目錄,-s /sbin/nologin表示該使用者不能登陸到系統。

使用者建立完畢後,我們現在來下載下傳mysql5.5的軟體包,使用如下指令:

mysql5.5資料庫cmake源碼編譯安裝

mysql5.5下載下傳完畢後,我們現在開始安裝mysql編譯安裝時,所需要的軟體包。使用如下指令:

yum -y install gcc gcc-c++ cmake ncurses-devel libtool zilib-devel

mysql5.5資料庫cmake源碼編譯安裝

注意其中cmkae軟體包一定要安裝,否則我們下面無法安裝mysql5.5。

有關cmkae的相關釋義,百度百科如下:

cmake是一個跨平台的安裝(編譯)工具,可以用簡單的語句來描述所有平台的安裝(編譯過程)。它能夠輸出各種各樣的makefile或者project檔案,能測試編譯器所支援的c++特性,類似與unix下的automake。隻是cmake的組态檔取名為cmakelists.txt。

cmake并不直接建構出最終的軟體,而是産生标準的建構檔(如 unix 的makefile 或 windows visual c++ 的 projects/workspaces),然後再依一般的建構方式使用。

mysql5.5資料庫cmake源碼編譯安裝

以上所有軟體安裝完畢後,我們現在開始解壓mysql5.5,使用如下指令:

tar -xvf mysql-5.5.39.tar.gz

mysql5.5資料庫cmake源碼編譯安裝

檢視解壓後的文檔,如下:

mysql5.5資料庫cmake源碼編譯安裝

注意圖中标記出來的cmkae目錄。這個就是我們要安裝是所需要的重要檔案。

現在開始正式安裝mysql5.5,使用如下指令進行配置mysql5.5.如下:

cmake -dcmake_install_prefix=/usr/local/mysql

mysql5.5資料庫cmake源碼編譯安裝

<b>注意這點就是與mysql5.5源碼安裝之前版本不同的地方。之前版本使用./configure進行配置。</b>

同時還要說明下,-dcmake_install_prefix這個參數不容易記憶,但是不需要擔心。其實mysql的安裝文檔已經給出相關的安裝步驟。檢視install-source安裝文檔。如下:

cat install-source |sed -n ‘5417,5438p’

該指令的作用是顯示install-source檔案5417到5438行之間的内容。

mysql5.5資料庫cmake源碼編譯安裝

配置完畢後,現在開始編譯mysql5.5,使用make指令。如下:

make

mysql5.5資料庫cmake源碼編譯安裝

編譯完畢後,開始安裝mysql5.5,使用make install指令。如下:

make install

mysql5.5資料庫cmake源碼編譯安裝

安裝完畢後,我們現在還不能啟動mysql資料庫的,需要進行一些配置。

修改mysql運作目錄的所屬使用者及使用者組,使用如下指令:

chown mysql:mysql -r /usr/local/mysql/

mysql5.5資料庫cmake源碼編譯安裝

為什麼要修改呢?是因為mysql運作時,所使用的使用者就mysql。

mysql5.5資料庫cmake源碼編譯安裝

mysql運作目錄的所屬使用者修改完畢後,我們還要初始化mysql資料庫。

在mysql5.5的安裝目錄下執行如下的指令:

./scripts/mysql_install_db –user=mysql –basedir=/usr/local/mysql –datadir=/usr/local/mysql/data

注意該指令行中的–user=mysql表示運作mysql資料庫時所使用的使用者,–basedir=/usr/local/mysql表示mysql資料庫說安裝的位置,–datadir=/usr/local/mysql/data表示mysql資料庫的資料檔案存儲的位置。

在執行該指令時,系統會提示你權限不夠。如下:

mysql5.5資料庫cmake源碼編譯安裝

檢視mysql_install_db檔案的相關權限,如下:

ll scripts/mysql_install_db

mysql5.5資料庫cmake源碼編譯安裝

而且通過上圖,我們可以很明顯的看到mysql_install_db檔案根本沒有可執行權限。

我們需要給mysql_install_db檔案配置可執行權限,如下:

chmod a+x ./scripts/mysql_install_db

mysql5.5資料庫cmake源碼編譯安裝

權限配置完畢後,我們再次執行上述指令。如下:

mysql5.5資料庫cmake源碼編譯安裝

資料庫初始化完畢後,我們還有兩個工作要做。一是配置mysql的配置檔案my.cnf。二是配置mysql啟動檔案。

my.cnf檔案的内容,我們可以自己填寫,也可以根據mysql安裝檔案中提供的模版進行修改。

該模版檔案為support-files目錄下的my-medium.cnf等幾個檔案。我們現在以my-medium.cnf檔案為例,我們隻需要複制該檔案并重命名為my.cnf即可。如下:

cp support-files/my-medium.cnf /etc/my.cnf

mysql5.5資料庫cmake源碼編譯安裝

複制完畢後,再次檢視my.cnf檔案,如下:

cat /etc/my.cnf |grep -v ^#|grep -v ^$

mysql5.5資料庫cmake源碼編譯安裝

注意該指令中,grep -v ^#表示不顯示以#開頭的行,grep -v ^$表示不顯示以空白開頭行。

my.cnf檔案配置完畢後,我們還要把support-files目錄下的mysql.server檔案複制到/etc/init.d/下并重命名為mysqld。mysqld就是把mysql作為服務啟動的檔案。如下:

cp support-files/mysql.server /etc/init.d/mysqld

mysql5.5資料庫cmake源碼編譯安裝

通過上圖我們可以發現,mysqld檔案并沒有執行權限。我們現在需要給其執行權限,如下:

chmod a+x /etc/init.d/mysqld

mysql5.5資料庫cmake源碼編譯安裝

以上全部修改并配置完畢後,我們就可以啟動mysql5.5資料庫.

啟動并檢視如下:

/etc/init.d/mysqld start

ps aux |grep mysqld

netstat -tunlp |grep 3306

mysql5.5資料庫cmake源碼編譯安裝

通過上圖,我們可以看到mysql資料庫已經成功啟動。

下面我們登入mysql資料庫看下,要使用mysql指令。我們需要把/usr/local/mysql/bin/路徑加入到系統的環境變量中,否則mysql指令無法使用。如下:

mysql5.5資料庫cmake源碼編譯安裝

現在把/usr/local/mysql/bin/路徑加入到系統的環境變量中,如下:

echo $path

echo path=$path:/usr/local/mysql/bin &gt;&gt;/etc/profile

source /etc/profile

mysql -u root -p

mysql5.5資料庫cmake源碼編譯安裝

通過上圖,我們可以看到mysql指令已經可以正常使用。

到此mysql5.5的cmake源碼安裝就完畢了。

如果mysql用戶端連接配接,mysql服務比較慢的話。我們需要在my.cnf檔案中加入skip-name-resolve,如下:

mysql5.5資料庫cmake源碼編譯安裝