Linux下配置功能完善的Web服務(wù)器

字號(hào):

調(diào)試環(huán)境:Redhat9.0Apache1.3.29Mysql3.23.58PHP4.3.4
    Linux系統(tǒng)的安裝我就不講了,這是基本功,其實(shí)這篇文章在類似Redhat的其他linux也應(yīng)該通用,大家只要掌握我提供的方法就行。記得安裝Redhat9。0的時(shí)候不要安裝系統(tǒng)默認(rèn)的apache,mysql和php以及相關(guān)的軟件。已經(jīng)安裝的請(qǐng)用rpm-e*刪除已經(jīng)安裝的包。
    1.安裝Mysql3.23.58
    其實(shí)老實(shí)說(shuō)直接安裝Mysql官方網(wǎng)站提供的rpm包也是一個(gè)比較可行的辦法,他的官方網(wǎng)站的rpm包的提供基本跟tar包發(fā)行是同步的,這點(diǎn)我比較喜歡,至少安裝rpm包的在后面的調(diào)試中不會(huì)出現(xiàn)mysql庫(kù)文件找不到的情況。但這里還是有必要講一下自定義安裝的步驟,畢竟網(wǎng)友自定義安裝的還說(shuō)挺多的。
    軟件獲?。篽ttp://www.mysql.com/downloads/index.HTML
    安裝步驟:
    tarzxvfmysql-3.23.58.tar.gz
    cdmysql-3.23.58
    ./configure--prefix=/usr/local/mysql--sysconfdir=/etc--localstatedir=/var/lib/mysql
    make
    makeinstall
    #prefix=/usr/local/mysqlmysql安裝的目標(biāo)目錄
    #sysconfdir=/etcmy.ini配置文件的路徑
    #localstatedir=/var/lib/mysql數(shù)據(jù)庫(kù)存放的路徑
    安裝完以后要初始化數(shù)據(jù)庫(kù),當(dāng)然你是升級(jí)的話不用做這步;
    /usr/local/mysql/bin/mysql_install_db
    如果系統(tǒng)沒(méi)有mysql這個(gè)用戶的話,做以下這步:
    useradd-M-o-r-d/var/lib/mysql-s/bin/bash-c"MySQLServer"-u27mysql
    然后我啟動(dòng)mysql
    /usr/local/mysql/bin/safe_mysqld&
    ok,先看看mysql能否正常工作
    mysql-urootmysql
    一般情況下都是不能正常鏈接數(shù)據(jù)庫(kù),錯(cuò)誤提示一般為:
    ERROR2002:Can’tconnecttolocalMySQLserverthroughsocket’/var/lib/mysql/mysql.sock’(2)
    其實(shí)網(wǎng)上大家問(wèn)的最多的都是整個(gè)問(wèn)題,說(shuō)什么鏈接不到mysqld.sock,其實(shí)大家不妨看看mysql的錯(cuò)誤日志就明白怎么回事,我這里的錯(cuò)誤日志是在/var/lib/mysql/*.err你會(huì)發(fā)現(xiàn)mysql只所以不能啟動(dòng),是因?yàn)?var/lib/mysql的權(quán)限不允許mysql服務(wù)訪問(wèn),英文mysql默認(rèn)是調(diào)用mysql用戶來(lái)啟動(dòng)服務(wù)的,好了,既然知道是什么原因找到不能啟動(dòng),那就簡(jiǎn)單了。我們只要 chown-Rmysql:mysql/var/lib/mysql就行,如果還是啟動(dòng)不了,再慢慢調(diào)試權(quán)限,反正一般啟動(dòng)不了都是權(quán)限的問(wèn)題。
    如果大家還是不能啟動(dòng)不了的話,那就用我的比較繁瑣的權(quán)限的設(shè)置,反正我每次都是這么做的,一般不會(huì)有問(wèn)題,見(jiàn)下:
    chown-Rroot/usr/local/mysql
    chgrp-Rmysql/usr/local/mysql
    chown-Rroot/usr/local/mysql/bin
    chgrp-Rmysql/usr/local/mysql/bin
    chgrp-Rmysql/var/lib/mysql
    chmod777/var/lib/mysql
    chown-Rroot/var/lib/mysql/mysql
    chgrp-Rmysql/var/lib/mysql/mysql
    chmod777/var/lib/mysql/mysql
    chown-Rroot/var/lib/mysql/mysql/*
    chgrp-Rmysql/var/lib/mysql/mysql/*
    chmod777/var/lib/mysql/mysql/*
    chmod777/usr/local/mysql/lib/mysql/libmysqlclIEnt.a
    做完上面的步驟,然后把你編譯目錄的一個(gè)腳本COPY過(guò)去
    cpsupport-files/mysql.server/etc/rc.d/init.d/mysqld
    chkconfig--addmysqld
    用ntsysv設(shè)置使mysql每次啟動(dòng)都能自動(dòng)運(yùn)行。
    好了,至此mysql安裝完畢,你可以這樣起動(dòng)你的mysql服務(wù)
    /etc/rc.d/init.d/mysqldstart
    下面這步比較關(guān)鍵,
    ln-s/usr/local/mysql/lib/mysql/usr/lib/mysql
    ln-s/usr/local/mysql/include/mysql/usr/include/mysql
    大家可以不做這步,大可以在編譯其他軟件的時(shí)候自定義myslq的庫(kù)文件路徑,但我還是喜歡把庫(kù)文件鏈接到默認(rèn)的位置,這樣你在編譯類似PHP,Vpopmail等軟件時(shí)可以不用指定mysql的庫(kù)文件地址。