首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫

Linux 下 MySQL 5.5 源碼編譯安裝完整筆記:CMake 參數詳解與系統整合

     編輯:MySQL 資料庫相關知識

前置依賴

yum -y install gcc gcc-c++ ncurses-devel libaio-devel cmake

1. 編譯安裝 CMake(若系統版本過舊)

tar -zxvf cmake-2.8.4.tar.gz
cd cmake-2.8.4
./configure && make && make install

2. 建立目錄與使用者

mkdir -p /usr/local/mysql /usr/local/mysql/data
groupadd mysql
useradd -r -g mysql -s /bin/false mysql

3. CMake 核心參數與編譯

tar -zxvf mysql-5.5.10.tar.gz
cd mysql-5.5.10
cmake . \
  -DCMAKE_INSTALL_PREFIX=/usr/local/mysql \
  -DMYSQL_DATADIR=/usr/local/mysql/data \
  -DDEFAULT_CHARSET=utf8 \
  -DDEFAULT_COLLATION=utf8_general_ci \
  -DEXTRA_CHARSETS=all \
  -DENABLED_LOCAL_INFILE=1 \
  -DWITH_INNOBASE_STORAGE_ENGINE=1 \
  -DWITH_PARTITION_STORAGE_ENGINE=1 \
  -DWITH_FEDERATED_STORAGE_ENGINE=1 \
  -DWITH_BLACKHOLE_STORAGE_ENGINE=1 \
  -DWITH_MYISAM_STORAGE_ENGINE=1 \
  -DWITH_READLINE=1 \
  -DWITH_SSL=system \
  -DWITH_ZLIB=system
make -j$(nproc)
make install

參數速查表

參數說明
CMAKE_INSTALL_PREFIX安裝根目錄
MYSQL_DATADIR資料目錄
DEFAULT_CHARSET預設字元集
DEFAULT_COLLATION預設校對規則
EXTRA_CHARSETSall/none/complex 控制編譯入哪些字元集
ENABLED_LOCAL_INFILE啟用 LOAD DATA LOCAL INFILE
WITH_*_STORAGE_ENGINE靜態編譯引擎,減少 runtime 插件載入
WITH_SSLsystem/bundled/yes/no
WITH_ZLIBsystem/bundled

4. 重新編譯清理

make clean
rm -f CMakeCache.txt
rm -rf /etc/my.cnf

5. 系統整合

cd /usr/local/mysql
chown -R root:mysql .
chown -R mysql:mysql data
cp support-files/my-medium.cnf /etc/my.cnf
scripts/mysql_install_db --user=mysql
cp support-files/mysql.server /etc/init.d/mysql
chmod +x /etc/init.d/mysql
chkconfig --add mysql
chkconfig mysql on

6. 環境變數

echo 'export PATH=/usr/local/mysql/bin:$PATH' >> /etc/profile
source /etc/profile

7. 啟動與驗證

service mysql start
mysql -u root
# 設定密碼與遠程授權
mysql> GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'password';
mysql> FLUSH PRIVILEGES;

防火牆

iptables -A INPUT -p tcp --dport 3306 -j ACCEPT
service iptables save

源碼安裝優缺點

  • 優:高度定製、精簡體積、特定優化旗標(-O3 -march=native)
  • 缺:編譯耗時、升級繁瑣、無包管理器依賴解析、安全補丁需自行回港
  • 建議:生產環境優先官方 RPM/DEB 或 Percona Server,源碼安裝適合學習、嵌入式、極致效能調優場景

掌握 CMake 參數矩陣,即可按需定製專屬 MySQL 建置。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved