萬盛學電腦網

您现在的位置: 萬盛學電腦網 >> 作業系統 >  >> Linux 教學

CentOS 5.10 編譯安裝 MariaDB 5.5.33a 完整實戰筆記

MariaDB 作為 MySQL 社群分支,擁有更優秀的儲存引擎(Aria、XtraDB/InnoDB)、更好的效能與開放授權。本文記錄在 CentOS 5.10 32 位元 上,從原始碼編譯安裝 MariaDB 5.5.33a 的完整生產級部署流程,含系統預備、防火牆、SELinux、cmake 編譯、資料目錄初始化、服務註冊、安全性加固。

系統環境與約定

項目設定值
作業系統CentOS 5.10 32-bit
MariaDB 版本5.5.33a
安裝前綴/usr/local/mysql
資料目錄/data/mysql
埠口3306
執行用戶/組mysql:mysql

第一階段:系統預備

1. 網路與遠程連線確認

配置靜態 IP、DNS、閘道,確保 SSH 連線正常、yum 可用。

2. 防火牆開放 3306 埠

vi /etc/sysconfig/iptables
# 在 22 埠規則下方添加(切勿加在最後 REJECT 之後)
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 3306 -j ACCEPT
/etc/init.d/iptables restart

MariaDB 安裝完成登入畫面

3. 關閉 SELinux

vi /etc/selinux/config
# SELINUX=enforcing
# SELINUXTYPE=targeted
SELINUX=disabled
shutdown -r now

4. 安裝編譯依賴(一次性安裝,利後續 PHP/Nginx 編譯)

yum install -y make apr* autoconf automake curl curl-devel gcc gcc-c++ \
gtk+-devel zlib-devel openssl openssl-devel pcre-devel gd kernel keyutils \
patch perl kernel-headers compat* cpp glibc libgomp libstdc++-devel \
keyutils-libs-devel libsepol-devel libselinux-devel krb5-devel libXpm* \
freetype freetype-devel freetype* fontconfig fontconfig-devel libjpeg* \
libpng* php-common php-gd gettext gettext-devel ncurses* libtool* \
libxml2 libxml2-devel patch policycoreutils bison

第二階段:編譯安裝 cmake

cd /usr/local/src
tar zxvf cmake-2.8.12.1.tar.gz
cd cmake-2.8.12.1
./configure && make && make install

第三階段:編譯安裝 MariaDB

  1. 建立用戶與目錄
    groupadd mysql && useradd -g mysql -s /bin/false mysql
    mkdir -p /data/mysql /usr/local/mysql
    chown -R mysql:mysql /data/mysql
  2. 解壓與 cmake 配置
    cd /usr/local/src && tar zxvf mariadb-5.5.33a.tar.gz && cd mariadb-5.5.33a
    cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_DATADIR=/data/mysql -DSYSCONFDIR=/etc
  3. 編譯安裝
    make && make install
  4. 配置檔案部署
    cd /usr/local/mysql
    cp ./support-files/my-huge.cnf /etc/my.cnf
    vi /etc/my.cnf # [mysqld] 區段添加 datadir = /data/mysql
  5. 初始化系統資料庫
    ./scripts/mysql_install_db --user=mysql
  6. 註冊服務
    cp ./support-files/mysql.server /etc/rc.d/init.d/mysqld
    chmod 755 /etc/init.d/mysqld
    chkconfig mysqld on
  7. 編輯啟動腳本路徑
    vi /etc/rc.d/init.d/mysqld
    basedir=/usr/local/mysql
    datadir=/data/mysql
  8. 啟動並設定 root 密碼
    service mysqld start
    vi /etc/profile # 添加 export PATH=$PATH:/usr/local/mysql/bin
    source /etc/profile
    mysql_secure_installation # 互動式設定 root 密碼、移除匿名用戶、禁止遠程 root 登入、移除 test 庫
  9. 庫檔連結(便於 PHP 等編譯連結)
    ln -s /usr/local/mysql/lib/mysql /usr/lib/mysql
    ln -s /usr/local/mysql/include/mysql /usr/include/mysql
  10. 重啟驗證
    shutdown -r now
    mysql -u root -p

生產環境補充建議

  • 配置 innodb_buffer_pool_size = 物理記憶體 60-70%。
  • 啟用 slow_query_log、log_queries_not_using_indexes。
  • 主從同步配置 server-id、log-bin、relay-log。
  • 定期 mysqldump 或 xtrabackup 備份。

遵循本流程,可在 CentOS 5 等舊版系統上穩定部署 MariaDB,為業務提供高效能關聯式資料庫服務。

copyright © 萬盛學電腦網 all rights reserved