源碼安裝lamp

 

mysql安裝方式:
    1)rpm
       1系統提供商提供的,
       2官方提供的:版本比較新
    2)二進制包,類似於綠色軟件,官方編譯好的,但是受限於平臺,要和自己的平臺向適合
    3)源碼編譯,能夠最大化的根據cpu的性能做優化,這樣可能會更適合自己的系統
環境,而且編譯安裝可以定製,需要哪些功能可以添加上,不需要的可以去掉
 
    二進制包的安裝過程
      安裝開發環境########要想編譯安裝軟件包,編譯環境要安裝好
          1 指定自己的yum源
          2 安裝相關的開發包組
     
              yum -y groupinstall "Development Libraries" "Development Tools"
"Legacy Software Development Development" "X Software Development"
 
          3 下載安裝mysql
要求:mysql的包解壓出來後必須放在/usr/local下並且名字爲mysql,一般不是重命名爲mysql
,而是使用鏈接
          4 解壓mysql包到/usr/local,並鏈接到mysql
             #tar xf mysql-5.5.15-linux2.6-i686.tar.gz -C /usr/local
             #ln -sv /usr/local/mysql-5.5.15-linux2.6-i686 /usr/localmysql
          5 mysql是數據庫,既是數據庫,都會有存放數據的地方,默認的情況下存放數據的
地方時/usr/local/mysql/data中,和mysql在同一個分區上,但是我們在使用時不回吧
data放在mysql的安裝路徑當中的,可以把它放在建立的特定的分區上,最好是做一個lvm
,存放數據。 下面我們就來創建一個LVM
             #fdisk /dev/sda #############創建新分區,比如創建的是/dev/sda5,注意:
LVM 的分區類型是8e
             #partprobe /dev/sda5 ########讓系統重讀磁盤分區
             #pvcreate /dev/sda5 ########創建pv
             #vgcreate myvg /dev/sda5 ###########創建vg
             #lvcreate -L 2G -n mydata myvg #########創建一個名爲mydata大小爲2G的LV
             #lvdisplay ##########查看lv的
             #mke2fs -j -L MYDATA /dev/myvg/mydata ######格式化爲ext3 ,卷標爲MYDATA
             #mkdir /mydata
             #mount /dev/myvg/mydata /mydata ##########掛載
            爲了讓其開機自動掛載,需要在/etc/fstab中定義
             #Vim /etc/fstab
              LABEL=MYDATA     /mydata     ext3   defaults   0 0
          6 某個程序都會在某個特定用戶的身份下運行,一般來講mysql都要以mysql的身份
運行
             #groupadd -g 3306 mysql
             #useradd -g msyql -s /sbin/nologin -u 3306 -M mysql
             #mkdir /mydata/data ########創建data 讓mysql的數據放在data下
             #chown -R mysql:mysql /mydata ########將/mydata的屬主屬組改爲mysql
          7 其實由於二進制包是屬於綠色軟件,所以不需要安裝,但是需要做初始化的
             #cd /usr/local/mysql
             #chown -R mysql:mysql . #########把當前目錄下的所有文件的屬主屬組改爲mysql
             #scripts/mysql_install_db --user=msyql --datadir=/mydata/data #######/usr/local/mysql
下的scripts目錄下有個腳本mysql_install_db是專門用來初始化的,--user是用來制定用戶的,--datadir是用來制定
數據存放路徑的
             #chown -R root . ########把當前用戶的屬主改回root,不能讓mysql對當前目錄具有所有權限,但是屬組還爲mysql
          8 用這種方式安裝的mysql 在/etc/init.d下沒有mysqld的腳本,所以不能像rpm包安裝的那樣使用 service mysqld start
啓動   ,這樣我們就把/usr/local/mysql/support-files/msyql.server考到      
             #cp /usr/local/mysql/support-files/msyql.server /etc/init.d/mysqld
             #chkconfig --add msyqld #######吧mysqld添加到服務列表 中
             #cp support-files/my-large.cnf /etc/my.cnf #######cp配置文件
             #vim /etc/,y.cnf ########在[mysqld]下面修改並添加如下
              thread_concurrency=2 ######數字大小爲cpu個數的2倍,我們是1顆cpu,所以是2
              datadir = /mydata/data
              保存退出
 
          9 #service mysqld start #########啓動mysql
             #vim /etc/profile#######把mysql命了的路徑添加到PATH變量中,添加內容如下
              PATH=$PATH:/usr/local/mysql/bin
             #source /etc/profile 立即生效
 
          10 系統在編譯安裝軟件包時會搜索庫文件所在的地放,而我們編譯安裝的mysql的
庫文件lib在/usr/local/mysql/lib,我們要讓系統指導我們的庫文件在這個路徑下
             #vim /etc/ld.so.conf.d/mysql.d########在/etc/ld.so.conf.d下新建並編輯mysql.d
              /usr/local/msyql/bin#############讓系統指導當前msyql的lib的位置
             #ldconfig##########重新搜索並加載所有的庫文件的路徑
        
          11 下面就是頭文件,編譯安裝完成後的頭文件在/usr/local/mysql/下的include,而默認的
頭文件在/usr/include/下
             #ln -sv /usr/local/mysql/include /usr/include/mysql
          12 編輯/etc/man.config #######添加man路徑
             Vim /etc/man.config
               MANAPTH /usr/local/msyql/man
             到此爲止,MySQL已經安裝完成
         
         下載並安裝httpd
           1 下載省略,直接解壓縮並編譯安裝
              #tar xf httpd-2.2.19.tar.bz2
              #cd httpd-2.2.19
              #./configure --prefix=/usr/local/apache --sysconfdir=/etc/httpd --enable-mods=most --enable-mods-shared=most
--enable-so --enable-ssl ########生成makefile文件
              #make
              #make install
             
           2 大多數的軟件使用源代碼編譯安裝完成後,不會提供給我們使用service能夠啓動的腳本的,像剛纔的mysql還可以cp樣本
腳本文件,而對於apache來說,卻沒有這樣的樣本腳本文件,因此我們必須從別的地方cp過來一個樣本文件/etc/init.d/httpd到/root下。其實,沒有這個腳本,
我們也可以啓動apache,通過/usr/local/apache/bin/apachectl start來啓用apache ,但是/usr/local/apache/bin/apachectl這個腳本並不適合在
/etc/init.d/目錄下當做服務腳本來用,所以不能用它,還得需要我們修改cp過來的文件以啓動服務
              #vim httpd
               apachectl=/usr/local/apache/bin/apachectl
               httpd=${HTTPD-/usr/local/apache/bin/httpd}
           3 #cp /etc/httpd/httpd.conf /etc/httpd/httpd.conf.bak #####cp配置文件,避免改錯配置文件
               vim /etc/httpd/httpd.conf
               Pidfile "/var/run/httpd.pid"##########也可以在前面的httpd中修改,使兩個腳本的Pidfile路徑一致
              #export PATH=$PATH:/usr/local/apache/bin
              #apachectl start ##########啓動apache
             下面我們就來實現通過service 來啓動Apache
              #cp httpd /etc/init.d ##########cphttpd到/etc/init.d下
              #apachectl stop########註明:如果這個命令要停不了的話就使用kill停進程
              #chkconfig --add httpd ########添加httpd到命令列表
              #chkconfig httpd on ########使httpd能夠開機啓動
              #service httpd start
             配置lamp支持虛擬主機
              #vim /etc/httpd/httpd.conf
               #DocumentRoot "/usr/local/apache/htdocs"#######取消中心主機
               Include /etc/httpd/extra/httpd-vhosts.conf #######把Virtual hosts 下的想啓用起來
              #vim /extra/httpd-vhosts.conf 按照樣例,添加虛擬主機 ,添加虛擬 主機,主要是安裝論壇之類的用的,這裏不做詳細介紹,格式如下        
               <VirtualHost *:80>
                    ServerAdmin   ##虛擬主機名
                    DocumentRoot ##安裝路徑
                    ServerName    ##服務器名字
                    ErrorLog      ##錯誤日誌路經
                    CustomLog     ##訪問日誌路經
                </VirtualHost>
             測試
    在其中某一個虛擬主機的網頁存放目錄中創建一個indix.html的文件,並寫進一些內容,然後在瀏覽器中輸入對應主機的主機名,如果顯示出indix.html的內容,則表示虛擬主機設置成功。
 
            
         下載並編譯安裝php
              下載過程省略,直接解壓縮
               #tar xf php-5.3.6.tar.bz2
               #cd php-5.3.6 
               #./configure --prefix=/usr/local/php5 --sysconfdir=/etc/php --enable-mbstring --with-apxs2=/usr/local/apache/bin/apxs
--with-mysql=/usr/local/mysql 
               #make
               #make install
               #cp php.ini-production /usr/local/php5/lib/php.ini
               #vim /etc/httpd/httpd.conf
                AddType application/x-httpd-php .php 
                AddType application/x-httpd-source .phps
                DirectoryIndex index.php
          
             查看php模塊兒是否安裝進apache
                打開apache的主配置文件/etc/httpd/httpd.conf 查看LoadModule中是否
有如下行: LoadModules php5_module modules/libphp5.so,有的話說明安裝成功
           移植php的頭文件,lib庫文件,方法和msyql的相同
             測試php和pache、myseq的連接
       測試php和apache的連接是否成功
       在apache的網頁目錄下生成php主頁文件index.php並寫入如下內容
       <?php
       phpinfo();
       ?>
       使用瀏覽器進行驗證,如果出現php的主頁信息,則爲連接成功
測試php和mysql的連接
       打開mysql服務:service mysqld start
       從新編輯index.php主頁文件,內容修改如下:
       <?php
         $link=mysql_connect(‘127.0.0.1’,‘root’,‘’);
         if($link)
            echo "success.."; 
         else 
            echo "failure...";
        ?>
        在確保mysql開啓的情況下,打開瀏覽器,如果顯示sucess則表示php連接上了mysql
        關閉mysql服務,將顯示爲failure,說明php和mysql連接正常。
 
                     
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章