[CentOS7]更新PHP和MySQL
首先
在上一篇文章中,我安装了Webmin。
在进行CentOS的安装过程中,我进行了更新,但PHP和MySQL没有更新到最新版本。
既然如此,我希望从一开始就安装最新版本的软件。
环境如下所示
-
- さくらVPS
-
- スタートアップスクリプト「CentOS_LAMP」を使用
-
- CentOS 7.6.1810
- Apache 2.4.6
只需要一个选项,下面是要更新的两个。
只需要一个选择,以下是要更新的两个。
只需一个选项,以下是要更新的两个。
只需要一个选项,下面是需要更新的两个。
-
- PHP 5.4.16 -> PHP 7.3.0
- MariaDB 5.5.60 -> MariaDB 10.3
PHP升级
请确认最新版本
http://php.net/downloads.php
最新版本为PHP7.3.0。
现在检查已安装的PHP。
# rpm -qa | grep php
php-mysql-5.4.16-46.el7.x86_64
php-process-5.4.16-46.el7.x86_64
php-xml-5.4.16-46.el7.x86_64
php-gd-5.4.16-46.el7.x86_64
php-cli-5.4.16-46.el7.x86_64
php-mbstring-5.4.16-46.el7.x86_64
php-common-5.4.16-46.el7.x86_64
php-devel-5.4.16-46.el7.x86_64
php-pdo-5.4.16-46.el7.x86_64
php-pear-1.9.4-21.el7.noarch
因为之后我打算再安装相同的扩展模块,所以先记下已经安装的内容。
删除旧版的PHP
虽然似乎不需要删除,但看其他网站大家都在删除,所以我会删除所有与PHP5相关的内容。
# yum remove php-*
:
省略
:
Complete!
确认是否已经被删除了
# php -v
bash: php: command not found
安装PHP7
在Remi官方网站上有一个下载链接,可以使用Remi存储库进行安装。
请确认链接,
使用以下指令进行安装。
# rpm -Uvh http://rpms.famillecollet.com/enterprise/remi-release-7.rpm
其实一开始我对Remi并不是很理解,但是通过这个网站我大致明白了一些。参考:我对于Linux的软件包管理术语有了一些了解。
确保已经正确安装。
# ls -l /etc/yum.repos.d
total 80
:
省略
:
-rw-r--r--. 1 root root 951 Oct 3 2017 epel.repo
-rw-r--r-- 1 root root 446 Jun 19 17:28 remi-glpi91.repo
-rw-r--r-- 1 root root 446 Jun 19 17:28 remi-glpi92.repo
-rw-r--r-- 1 root root 446 Jun 19 17:28 remi-glpi93.repo
-rw-r--r-- 1 root root 456 Jun 19 17:28 remi-php54.repo
-rw-r--r-- 1 root root 1314 Jun 19 17:28 remi-php70.repo
-rw-r--r-- 1 root root 1314 Jun 19 17:28 remi-php71.repo
-rw-r--r-- 1 root root 1314 Jun 19 17:28 remi-php72.repo
-rw-r--r-- 1 root root 1314 Jun 19 17:28 remi-php73.repo
-rw-r--r-- 1 root root 750 Jun 19 17:28 remi-safe.repo
-rw-r--r-- 1 root root 2605 Jun 19 17:28 remi.repo
确认是否已经添加了Remi-*
PHP7的安装即将开始
我们将使用最新的remi-php73版本
请使用以下命令进行安装。
运行以下命令安装所有之前记录下来的原始已安装的扩展模块:
yum install –enablerepo=remi,remi-php73 php
# yum install --enablerepo=remi,remi-php73 php php-mysql php-process php-xml php-gd php-cli php-mbstring php-common php-devel php-pdo php-pear
:
省略
:
Complete!
确认是否已经安装。
# php -v
PHP 7.3.0 (cli) (built: Dec 4 2018 16:12:20) ( NTS )
Copyright (c) 1997-2018 The PHP Group
Zend Engine v3.3.0-dev, Copyright (c) 1998-2018 Zend Technologies
# rpm -qa | grep php
php-cli-7.3.0-1.el7.remi.x86_64
php-pear-1.10.7-1.el7.remi.noarch
php-common-7.3.0-1.el7.remi.x86_64
php-fedora-autoloader-1.0.0-1.el7.remi.noarch
php-devel-7.3.0-1.el7.remi.x86_64
php-json-7.3.0-1.el7.remi.x86_64
php-pdo-7.3.0-1.el7.remi.x86_64
php-gd-7.3.0-1.el7.remi.x86_64
php-7.3.0-1.el7.remi.x86_64
php-xml-7.3.0-1.el7.remi.x86_64
php-mbstring-7.3.0-1.el7.remi.x86_64
php-process-7.3.0-1.el7.remi.x86_64
php-mysqlnd-7.3.0-1.el7.remi.x86_64
一切问题,已升级至PHP7.3.0版本。
MariaDB的升级
接下来将更新MariaDB。
将MariaDB 5.5.60升级至MariaDB 10.3。
首先,确认当前版本。
# mysql --version
mysql Ver 15.1 Distrib 5.5.60-MariaDB, for Linux (x86_64) using readline 5.1
创建yum仓库
追加说明:在评论中收到了一个更简单的方法,请务必尝试这个方法。
在MariaDB上创建一个新的存储库。
MariaDB官方提供了一个存储库生成器。
仓库生成器:https://downloads.mariadb.org/mariadb/repositories/
选择CentOS > CentOS7(x86_64) > 10.3[稳定版],生成存储库的内容。
将此复制并使用
将设置位置更改为/etc/yum.repos.d/
在/etc/yum.repos.d/下创建一个名为MariaDB.repo的新文件
# cd /etc/yum.repos.d/
# vi MariaDB.repo
把刚才的仓库生成器的内容复制粘贴。
# MariaDB 10.3 CentOS repository list - created 2018-12-24 01:31 UTC
# http://downloads.mariadb.org/mariadb/repositories/
[mariadb]
name = MariaDB
baseurl = http://yum.mariadb.org/10.3/centos7-amd64
gpgkey=https://yum.mariadb.org/RPM-GPG-KEY-MariaDB
gpgcheck=1
Addendum 2018/12/28.
我在评论中得到了一种更简单的方法。
据说只需以下命令即可进行yum存储库设置。
详情请参考这里。
curl -sS https://downloads.mariadb.com/MariaDB/mariadb_repo_setup | sudo bash
尽管我并没有尝试过这种方法,但它看起来非常简单,所以请务必尝试一下。
更新
这次的工作是将MariaDB 5.5更新到MariaDB 10.3,所以需要先停止MariaDB,然后执行更新命令。
先停下来,然后确认是否已停止。
# systemctl stop mariadb
# systemctl status mariadb
:
省略
:
Active: inactive (dead) since
:
省略
:
确认是否已经变为无效(死)状态。
如果确认了,可以使用以下指令进行更新。
# yum update MariaDB-server MariaDB-client
:
省略
:
Complete!
版本确认
确认版本
# mysql --version
mysql Ver 15.1 Distrib 10.3.11-MariaDB, for Linux (x86_64) using readline 5.1
我順利地升級了版本。
总结
如果最终要做这个任务,也许不需要在樱花VPS上使用启动脚本”CentOS_LAMP”来安装… 这样的念头闪过我的脑海。
下次计划安装Composer,并引入PHP框架Codeigniter。