raspberrypi php7+NGinxでワードプレスを運用していたけどアップデートしたら動かなくなった

しばらく実行していなかったので、
raspbianのアップデートアップグレードを実行しました。

sudo apt update
sudo apt upgrade -y

すると、、、やってしまいました。WordPressが開けなくなりました。

Your PHP installation appears to be missing the MySQL extension which is required by WordPress.
あなたのPHPのインストールには、ワードプレスによって要求されたMySQLの拡張を利用できないようです。

MySQLの拡張?

php-mysqlというのが入っていないのでしょうか
今まで動いていたのに、おかしいですね・・・。

$ sudo apt-get install php-mysql
パッケージリストを読み込んでいます... 完了
依存関係ツリーを作成しています
状態情報を読み取っています... 完了
php-mysql はすでに最新版です。
アップグレード: 0 個、新規インストール: 0 個、削除: 0 個、保留: 1 個。

インストール済み・・・がっかり。

phpになんのモジュールが入っているかは-mでわかるそうです。

php -m|grep mysql

無い・・・mysqlのモジュールが入ってい無いと・・・?
php-mysqlはインストールされているのに、phpに入ってないということは、バージョン違い??

試しにさくらインターネット(ベーシック)にて試してみると・・・

$ php -m|grep mysql
mysqli
mysqlnd
pdo_mysql

ちゃんと入っていますね。

試しにphp関連のパッケージを確認してみます。

$ dpkg -l|grep php
ii dh-php 0.21~bpo8+1 all debhelper add-on to handle PHP PECL extensions
ii php-common 1:53+0~20170804100549.2+jessie~1.gbpa3f349 all Common files for PHP packages
ii php-mysql 1:7.1+53+0~20170804100549.2+jessie~1.gbpa3f349 all MySQL module for PHP [default]
ii php-pear 5.6.30+dfsg-0+deb8u1 all PEAR - PHP Extension and Application Repository
ii php5 5.6.30+dfsg-0+deb8u1 all server-side, HTML-embedded scripting language (metapackage)
ii php5-cgi 5.6.30+dfsg-0+deb8u1 armhf server-side, HTML-embedded scripting language (CGI binary)
ii php5-cli 5.6.30+dfsg-0+deb8u1 armhf command-line interpreter for the php5 scripting language
ii php5-common 5.6.30+dfsg-0+deb8u1 armhf Common files for packages built from the php5 source
ii php5-fpm 5.6.30+dfsg-0+deb8u1 armhf server-side, HTML-embedded scripting language (FPM-CGI binary)
ii php5-json 1.3.6-1 armhf JSON module for php5
ii php5-mysql 5.6.30+dfsg-0+deb8u1 armhf MySQL module for php5
ii php5-readline 5.6.30+dfsg-0+deb8u1 armhf Readline module for php5
ii php7.0 7.0.22-2+0~20170804100528.5+jessie~1.gbpdea206 all server-side, HTML-embedded scripting language (metapackage)
ii php7.0-cli 7.0.22-2+0~20170804100528.5+jessie~1.gbpdea206 armhf command-line interpreter for the PHP scripting language
ii php7.0-common 7.0.22-2+0~20170804100528.5+jessie~1.gbpdea206 armhf documentation, examples and common module for PHP
ii php7.0-dev 7.0.22-2+0~20170804100528.5+jessie~1.gbpdea206 armhf Files for PHP7.0 module development
ii php7.0-fpm 7.0.22-2+0~20170804100528.5+jessie~1.gbpdea206 armhf server-side, HTML-embedded scripting language (FPM-CGI binary)
ii php7.0-json 7.0.22-2+0~20170804100528.5+jessie~1.gbpdea206 armhf JSON module for PHP
rc php7.0-mysql 7.0.22-2+0~20170804100528.5+jessie~1.gbpdea206 armhf MySQL module for PHP
ii php7.0-opcache 7.0.22-2+0~20170804100528.5+jessie~1.gbpdea206 armhf Zend OpCache module for PHP
ii php7.0-readline 7.0.22-2+0~20170804100528.5+jessie~1.gbpdea206 armhf readline module for PHP
ii php7.1-common 7.1.8-2+0~20170804100723.7+jessie~1.gbpae7f04 armhf documentation, examples and common module for PHP
ii php7.1-mysql 7.1.8-2+0~20170804100723.7+jessie~1.gbpae7f04 armhf MySQL module for PHP
ii pkg-php-tools 1.28 all various packaging tools and scripts for PHP packages

あれれ?なにかおかしいです。
まずphpのバージョンが7.0です。

$ php -v
PHP 7.0.22-2+0~20170804100528.5+jessie~1.gbpdea206 (cli) (built: Aug 10 2017 14:34:58) ( NTS )
Copyright (c) 1997-2017 The PHP Group
Zend Engine v3.0.0, Copyright (c) 1998-2017 Zend Technologies
with Zend OPcache v7.0.22-2+0~20170804100528.5+jessie~1.gbpdea206, Copyright (c) 1999-2017, by Zend Technologies

それなのにいくつか7.1用のモジュールが入っていますね。
しかも、当該の「php7.0-mysql」は削除(rc)されてしまっています。
php7.1-mysqlがインストールされていますが、おそらくこれだとバージョン違いになってしまうのでしょう。

古いバージョンが入るかどうか不安ですがインストールしてみます。

$ sudo apt-get install php7.0-mysql
[sudo] password for mlin:
パッケージリストを読み込んでいます... 完了
依存関係ツリーを作成しています
状態情報を読み取っています... 完了
以下のパッケージが新たにインストールされます:
php7.0-mysql
アップグレード: 0 個、新規インストール: 1 個、削除: 0 個、保留: 1 個。
105 kB 中 0 B のアーカイブを取得する必要があります。
この操作後に追加で 432 kB のディスク容量が消費されます。
以前に未選択のパッケージ php7.0-mysql を選択しています。
(データベースを読み込んでいます ... 現在 118917 個のファイルとディレクトリがインストールされています。)
.../php7.0-mysql_7.0.22-2+0~20170804100528.5+jessie~1.gbpdea206_armhf.deb を展開する準備をしています ...
php7.0-mysql (7.0.22-2+0~20170804100528.5+jessie~1.gbpdea206) を展開しています...
php7.0-fpm (7.0.22-2+0~20170804100528.5+jessie~1.gbpdea206) のトリガを処理しています ...
php7.0-mysql (7.0.22-2+0~20170804100528.5+jessie~1.gbpdea206) を設定しています ...
php7.0-fpm (7.0.22-2+0~20170804100528.5+jessie~1.gbpdea206) のトリガを処理しています ...

入った!

そして、無事起動!!Wordpressが開きました!

モジュールさえ入ってしまえば再起動は不要なようでした。

あー、よかった 汗