萬盛學電腦網

 萬盛學電腦網 >> 數據庫 >> mysql教程 >> MySQL5.7 的編譯安裝的完整教程

MySQL5.7 的編譯安裝的完整教程

MySQL5.7 的編譯安裝的方法其實和yum安裝差不多的簡單並且兩者沒有什麼區別,下面我們來看一篇關於MySQL5.7 的編譯安裝的例子,具體的如下文介紹。

一直嫌棄 MySQL 的編譯安裝,原因很簡單,依賴復雜、容易出錯,總之就是麻煩。但這些天由於需要必須編譯安裝,被迫閱讀相關文檔,發現現在的 MySQL 安裝變得十分簡單和容易。

直接開始吧。

一切從必要依賴開始。

yum install -y gcc gcc-c++ ncurses-devel perl
本文中系統為 CentOS 7,不同系統的軟件包管理器可能用法不同,但需求類似,請准備好 gcc gcc++ ncurses 及 perl 相關編譯器或依賴庫即可。
必要的文件准備:

mysql 5.7.10 (include boost headers) http://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-boost-5.7.10.tar.gz

cmake 3.4.1 https://cmake.org/files/v3.4/cmake-3.4.1.tar.gz
首先需要安裝 cmake,因此解壓剛剛下載的 cmake 3.4.1 編譯安裝,步驟如下:

tar -xzvf cmake-3.4.1.tar.gz  
cd cmake-3.4.1 
./bootstrap
make && make install

安裝完 cmake,就開始著手 MySQL 編譯安裝的步驟。首先為添加 MySQL 對應的系統賬戶,用於保證其本地文件權限分配:

groupadd mysql
useradd -r -g mysql mysql

創建數據庫目錄:

mkdir -p /var/mysql/data
chown mysql:mysql /var/mysql/data

開始准備編譯安裝,解壓 mysql-boost-5.7.10.tar.gz 並進入其解壓後的 mysql-5.7.10 目錄,在該目錄下執行:

cmake \  
-DCMAKE_INSTALL_PREFIX=/usr/local/mysql \  
-DMYSQL_UNIX_ADDR=/usr/local/mysql/mysql.sock \  
-DDEFAULT_CHARSET=utf8 \  
-DDEFAULT_COLLATION=utf8_general_ci \  
-DWITH_INNOBASE_STORAGE_ENGINE=1 \  
-DWITH_ARCHIVE_STORAGE_ENGINE=1 \  
-DWITH_BLACKHOLE_STORAGE_ENGINE=1 \  
-DMYSQL_DATADIR=/var/mysql/data \  
-DMYSQL_TCP_PORT=3306 \  
-DWITH_BOOST=boost

除了上述參數,編譯安裝的參數還有很多很多,若需要了解每一個參數的具體含義或者參數的默認值,可以到 MySQL 官網的文檔裡查閱,在此給出這一版本的查閱地址: http://dev.mysql.com/doc/refman/5.7/en/source-configuration-options.html
執行完 cmake 的配置過程,就需要開始准備最為 漫長的 的編譯過程,根據不同機器的配置,時間大約在 2 小時左右(低配情況下 4 小時以上也是可能的)。執行編譯和安裝操作已經很熟悉了: make && make install。

好的,進行完以上步驟,首先需要改變 mysql 安裝目錄的所有者,比如我們安裝的目錄是 /usr/local/mysql,使用命令

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

修改目錄所有者。此時,復制一份默認配置文件

cp /usr/local/mysql/support-files/my-default.cnf /etc/my.cnf

如果提示已存在文件是否覆蓋時,覆蓋即可。

然後執行數據庫的初始化操作,

/usr/local/mysql/bin/mysqld --initialize --user=mysql,

這時候會初始化數據庫並創建一個數據庫 root 賬號,但是要注意,和以前不一樣的是,這個賬號是有默認密碼的,初始化的時候屏幕上會輸出初始化的密碼,如果錯過了,可以通過查看 /root/.mysql_secret 即可看到默認的密碼。

執行 cp /usr/local/mysql/support-files/mysql.server /etc/init.d,將 mysql 的服務啟動腳本復制過去,然後執行 service mysql.server start 啟動 mysql。

最後 /usr/local/mysql/bin/mysql -r root -p,輸入密碼回車,通過

set password=password('你的密碼');

來修改默認密碼

至此,基本的安裝流程完畢!你可以根據需要,將 mysql 加入開啟啟動,也可以將 /usr/local/mysql/bin 下的文件加入 PATH 環境變量,更多使用方式可以參考官方文檔,寫的十分細致。

copyright © 萬盛學電腦網 all rights reserved