歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux基礎 >> Linux教程 >> 64位Red Hat 5.6使用yum升級PHP

64位Red Hat 5.6使用yum升級PHP

日期:2017/2/28 14:45:33   编辑:Linux教程

最近給一台服務器升級PHP,默認安裝的系統是RedHat Linux Enterpris(企業版)5.6, 自帶的PHP是5.1.6,mysql是5.0.9,但安裝最新的phpMyAdmin要求PHP最低都要5.2版本。所以要升級PHP

網上找了很多地方,終於找到一個捷徑:使用yum升級PHP到最新版本。

眾所周知,RedHat企業版不注冊是不能使用YUM的。那麼下面從網上摘抄的一段文章來幫你解決這個問題。

CentOS/RHEL 5.6的php版本默認為php-5.1.6,但是在php-5.2.9版本之前的php都存在一個漏洞,但是目前網上很多地方都無法使用yum update php*升級到新版本,經過多方的搜索資料,終於找到一種升級CentOS/RHEL 5.6的php到新版本的方法。

Centos上安裝PHP一般來說有兩種做法,要不通過wget下載安裝文件,手動安裝。要不通過源repo安裝。

CentOS上的安裝源有好幾個(參加如下),官方的CentOS-Base.repo更新太遲緩,不太好用,比如官方的repo就沒有php-sqlite的源。

一般來說,推薦使用REMI的源,更新快,文件充分。

下面的兩個鏈接都是可以的,這裡我用的是第一個鏈接下載的remi源的
(1)下載
wget http://dl.iuscommunity.org/pub/ius/stable/Redhat/5/x86_64/epel-release-5-4.noarch.rpm
wget http://rpms.famillecollet.com/enterprise/remi-release-5.rpm

或用下面的鏈接下載也行的
wget http://mirrors.yun-idc.com/epel/5/x86_64/epel-release-5-4.noarch.rpm
wget http://rpms.famillecollet.com/el5.x86_64/remi-release-5-9.el5.remi.noarch.rpm

32位的如下:
wget http://mirrors.yun-idc.com/epel/5/i386/epel-release-5-4.noarch.rpm
wget http://rpms.famillecollet.com/el5.i386/remi-release-5-9.el5.remi.noarch.rpm

(1)安裝
Ø安裝之前可以先看一下這個兩個包會安裝哪些包及路徑

Ø 安裝下載好的remi源的兩個包
rpm -Uvh epel-release-5-4.noarch.rpm
rpm -Uvh remi-release-5.rpm

這樣就安裝完這樣就安裝了Remi repository在你的系統上,RHEL5的用remi-release-5.rpm,RHEL6的用remi-release-6.rpm,其它地方一樣。
Ø 然後需要編輯/etc/yum.repos.d/remi.repo
vi /etc/yum.repos.d/remi.repo

Ø 啟用Remi Repository修改enabled=0為enabled=1。【只修改將[remi]中的enabled=0改成enabled=1來啟用remi 源】
再在這個文件的最後增加一行:
priority=1
保存退出。
/etc/yum.repos.d/epel.re和/etc/yum.repos.d/epel-testing.repo這兩個文件也按照上面的方法進行編輯!只在最後一行添加“priority=1”

#rpm –import /etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL
#rpm –import /etc/pki/rpm-gpg/RPM-GPG-KEY-remi

(3)升級PHP到新版本
  之後就可以升級php了。經過測試,如果單獨升級php可能會提示失敗,這樣的話連同mysql一起升級就沒問題了,所以我們必須執行以下命令才能升級php。記得安裝後才用update。
yum --enablerepo=remi update php* mysql*
到現在為止php已經是5.4.17,mysql已經是5.5.32的了
(4)升級後可能的問題
無法啟動mysql服務,切換到數據庫的目錄下
[root@utooo-anhui ~]# cd /var/lib/mysql/
在數據庫的目錄會生成一個錯誤的err文件

查看那個生成的err文件可以看到有提示下面的錯誤:
[ERROR] /usr/libexec/mysqld: unknown option '--skip-locking'

到配置文件裡注釋掉那個錯誤的選項

vi /etc/my.cnf
# Here follows entries for some specific programs
# The MySQL server
[mysqld]
port= 3306
socket= /var/lib/mysql/mysql.sock
#skip-locking//把這個前面加個“#”號或去掉
key_buffer = 384M
max_allowed_packet = 1M
table_cache = 512
sort_buffer_size = 2M
read_buffer_size = 2M
read_rnd_buffer_size = 8M
myisam_sort_buffer_size = 64M
thread_cache_size = 8
query_cache_size = 32M
# Try number of CPU's*2 for thread_concurrency
thread_concurrency = 8
max_connections = 1024

改完之後,就可以啟動mysql的服務了。

Copyright © Linux教程網 All Rights Reserved