mysql版本和php版本升級問題
敬恭桑梓
敬恭桑梓 2018-08-02 15:53:34
0
2
1728

請問如何升級mysql版本和php版本

敬恭桑梓
敬恭桑梓

全部回覆(1)
代码输入中...

下載解壓縮

去php官方下載頁面,隨便選擇一個你的伺服器所在國家的鏡像,滑鼠右鍵複製連結。

$ wget http://am1.php.net/get/php-7.0.0.tar.gz/from/this/mirror

解壓縮下載到的壓縮套件

$ tar xf php-7.0.0.tar.gz$cd php-7.0.0

安裝前配置

解決依賴套件

yum -y install libxml2 libxml2-devel openssl openssl-devel curl-devel libjpeg-devel libpng-devel freetype-devel libmcrypt-devel

利用linux的make安裝方式,我們需要在make之前對軟體的編譯進行設定。這裡要留意,如果編譯之前沒有配置對應的選項,會導致不產生某些模組,後面可能會遇到問題。

./configure --prefix=/usr/local/php7 \--with-config-file-path=/usr/local/php7/etc \--with-config-file-scan-dir=/usr/local/php7/etc/php.d \--with-apxs2=/usr/local/apache/bin/apxs \--with-mcrypt=/usr/include \--enable-mysqlnd \--with-mysqli \--with-pdo-mysql \--with-gd \--with-iconv \--with-zlib \--enable-xml \--enable-shmop \--enable-sysvsem \--enable-inline-optimization \--enable-mbregex \--enable-mbstring \--enable-ftp \--enable-gd-native-ttf \--with-openssl \--enable-pcntl \--enable-sockets \--with-xmlrpc \--enable-zip \--enable-soap \--without-pear \--with-gettext \--enable-session \--with-curl \--with-jpeg-dir \--with-freetype-dir \--enable-opcache

上面的這段配置,藍色選項根據你的伺服器部署,修改成為你自己的實際路徑。

編譯安裝

原本在linux中,在configure之後,只需要make就可以進行編譯了,但是由於不同的環境,會出現不同的錯誤,例如我的伺服器上,出現了提示libiconv錯誤,我往上還看到libmcrypt錯誤。所以,在編譯的時候,我們可能需要根據編譯中出現的情況,安裝對應的一些模組或軟體環境。如果編譯錯誤後無法繼續編譯,可以使用make clean再來編譯。

我再編譯的時候,出現了libiconv錯誤,同時,我們的伺服器是雙核的,所以,我用了下面的命令進行編譯:

$ gmake -j2 ZEND_EXTRA_LIBS='-liconv'

-j2表示用雙核cup去編譯,編譯速度更快。總之,編譯中出現了什麼錯誤,就到網路上去查怎麼解決。

完成編譯之後,進行安裝即可。

$ make install

設定apache

如果上面的編譯安裝正常,由於我們設定了apxs選項,所以在編譯的時候,make會對apache的apxs進行呼叫操作,結果就是在apache的安裝目錄下的modules目錄下產生libphp7.so,並在apache的設定檔httpd.conf中增加一行

LoadModule php7_module        modules/libphp7.so

一看就明白了,就是讓apache去載入一個新的libphp7.so模組。但我們還是要對httpd.conf進行修改,重新設定apache。找到LoadModule php,你會發現,竟然出現了兩行LoadModule,同時載入了php5和php7,如下:

LoadModule php5_module        modules/libphp ##我們把第一行給註解掉,還要增加一個PHPIniDir的設定項,也就是修改為如下:

#LoadModule php5_module        modules/libphp5.soLoadModule php7_module        modules/libphp7.soPHPIniDir   /usr/local/php7/etc
重啟apache,現在可以寫一個phpinfo去試試看。

php的設定檔

在php預設安裝狀態下你可能發現  /usr/local/php7下沒有etc目錄,也就沒有php.ini檔。這是正常的,不過你可以自己創建php.ini,也可以從php源碼目錄中找到兩個php.ini-xxx文件,拷貝一個過去,改名為php.ini即可。

cd ~/php-7.0.0mkdir /usr/local/php7/etccp php.ini-production /usr/local/php7/etc/php.ini
如果你的伺服器上面還安裝了mysql,其實不用再做其他配置,我們在configure的時候,讓php7也支援mysql,如果你原本的lamp環境中已經可以正常連線mysql了,那現在php7其實也可以正常連接mysql,mysql不需要做任何設定修改。


#
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板