ubuntu 1604 server 下源代碼 編譯 mysql 5.7.28

源碼安裝

  • 安裝 ncurses工具
sudo apt-get install libncurses5-dev
  • 安裝pkgconfig
sudo apt-get install pkg-config
  • 安裝boost
mkdir -p /data/mysqlsrc/mysqlboost
cd /data/mysqlsrc/mysqlboost
wget https://nchc.dl.sourceforge.net/project/boost/boost/1.59.0/boost_1_59_0.tar.gz
# 可以直接用下載工具下載,下載這個boost,然後放到 /data/mysqlsrc/mysqlboost就可以,不需要解壓
  • 編譯安裝mysql
mkdir -p /data/mysqlsrc
cd /data/mysqlsrc
wget https://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.28.tar.gz
tar -zxvf mysql-5.7.28.tar.gz
cd mysql-5.7.28
# sudo cmake -DCMAKE_INSTALL_PREFIX=/data/mysql5.7/installdir -DMYSQL_DATADIR=/data/mysql5.7/data -DMYSQL_UNIX_ADDR=/tmp/mysql3306.sock -DMYSQL_TCP_PORT=3306 -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DWITH_MYISAM_STORAGE_ENGINE=1 -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_MEMORY_STORAGE_ENGINE=1 -DWITH_READLINE=ON  -DSYSCONFDIR=/etc -DDOWNLOAD_BOOST=1 -DWITH_BOOST=/usr/local/mysql5727/src/mysql-boost
sudo cmake -DCMAKE_INSTALL_PREFIX=/data/mysql5.7/installdir -DMYSQL_DATADIR=/data/mysql5.7/data -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DWITH_MYISAM_STORAGE_ENGINE=1 -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_MEMORY_STORAGE_ENGINE=1 -DWITH_READLINE=ON  -DSYSCONFDIR=/etc -DDOWNLOAD_BOOST=1 -DWITH_BOOST=/data/mysqlsrc/mysqlboost/ 
sudo make -j
sudo make install

# 編譯後
# 頭文件目錄:/data/mysql5.7/installdir/include
# 庫目錄: /data/mysql5.7/installdir/lib

  • 參數解釋:

DCMAKE_INSTALL_PREFIX:指定MySQL程序的安裝目錄,默認/usr/local/mysql
DEFAULT_CHARSET:指定服務器默認字符集,默認latin1
DEFAULT_COLLATION:指定服務器默認的校對規則,默認latin1_general_ci
ENABLED_LOCAL_INFILE:指定是否允許本地執行LOAD DATA INFILE,默認OFF
WITH_COMMENT:指定編譯備註信息
WITH_xxx_STORAGE_ENGINE:指定靜態編譯到mysql的存儲引擎,MyISAM,MERGE,MEMBER以及CSV四種引擎默認即被編譯至服務器,不需要特別指定。
WITHOUT_xxx_STORAGE_ENGINE:指定不編譯的存儲引擎
SYSCONFDIR:初始化參數文件目錄
MYSQL_DATADIR:數據文件目錄
MYSQL_TCP_PORT:服務端口號,默認3306
MYSQL_UNIX_ADDR:socket文件路徑,默認/tmp/mysql.sock

-DWITH_BOOST:指定解壓後的mysql-boost目錄

用cmake配置mysql預編譯參數:
-DCMAKE_INSTALL_PREFIX:安裝路徑
-DMYSQL_DATADIR:數據存放目錄
-DWITH_BOOST:boost源碼路徑
-DSYSCONFDIR:my.cnf配置文件目錄
-DEFAULT_CHARSET:數據庫默認字符編碼
-DDEFAULT_COLLATION:默認排序規則
-DENABLED_LOCAL_INFILE:允許從本文件導入數據
-DEXTRA_CHARSETS:安裝所有字符集

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章