rpm -e 清理已安裝相關包
tar zxvf mysql-3.23.58.tar.gz
cd mysql-3.23.58
./configure --prefix=/usr/local/mysql \
--sysconfdir=/etc --localstatedir=/var/lib/mysql
make && make install
# 初始化數據庫
/usr/local/mysql/bin/mysql_install_db
# 創建 mysql 用戶(不存在時)
useradd -M -o -r -d /var/lib/mysql -s /bin/bash -c "MySQL Server" -u 27 mysql
# 權限修復(關鍵:數據目錄必須屬於 mysql 用戶)
chown -R mysql:mysql /var/lib/mysql
# 啟動測試
/usr/local/mysql/bin/safe_mysqld &
mysql -uroot mysql
常見啟動失敗原因:/var/lib/mysql 權限不屬於 mysql 用戶,錯誤日志在 /var/lib/mysql/*.err。文中提供完整權限修復命令集。
tar zxvf apache_1.3.29.tar.gz
cd apache_1.3.29
# 擴大最大線程限制
vi src/include/httpd.h
#define HARD_SERVER_LIMIT 2560 # 原 256
./configure --prefix=/usr/local/apache \
--enable-module=so --enable-module=rewrite \
--enable-shared=max --htdocsdir=/var/www
make && make install
# 啟動
/usr/local/apache/bin/apachectl start
關鍵模塊說明:so 支持 DSO 動態加載;rewrite 需 DBM 支持,首次編譯必含;enable-shared=max 將標準模塊編為 DSO 而非靜態鏈接。
tar zxvf php-4.3.4.tar.gz
cd php-4.3.4
./configure --prefix=/usr/local/php \
--with-mysql=/usr/local/mysql \
--enable-force-cgi-redirect \
--with-freetype-dir=/usr --with-png-dir=/usr \
--with-gd --enable-gd-native-ttf --with-ttf \
--with-gdbm --with-gettext --with-iconv \
--with-jpeg-dir=/usr --with-png --with-zlib \
--with-xml --enable-calendar \
--with-apxs=/usr/local/apache/bin/apxs
make && make install
vi /usr/local/apache/conf/httpd.conf
# 添加 MIME 類型
AddType application/x-httpd-php .php
AddType application/x-httpd-php-source .phps
# 複製 php.ini
cp php.ini-dist /usr/local/php/lib/php.ini
vi /usr/local/php/lib/php.ini
register_globals = On # 兼容舊代碼,新版建議 Off
# 重啟 Apache
/usr/local/apache/bin/apachectl restart
echo "" > /var/www/info.php
# 瀏覽器訪問 https://server/info.php
ln -s /usr/local/mysql/lib/mysql /usr/lib/mysql 等,避免後續編譯 PHP/其他軟件找不到 MySQL 庫cp support-files/mysql.server /etc/rc.d/init.d/mysqld && chkconfig --add mysqld當前生產環境建議:使用發行版包管理器(yum/dnf/apt)安裝 LAMP/LEMP,或容器化部署(Docker/K8s),手動編譯僅用於極度定制化場景。版本應升級至 Apache 2.4、PHP 8.x、MySQL 8.0/Percona/MariaDB 10.x 以獲取安全更新與性能提升。