2013-10-10 23 views
6

私はこの質問のいくつかの例があることを知っていますが、私は解決策を見つけることができません。CentOSにPDOをインストールできない

私はphpのスクリプトが私にこのエラーを与えているApacheとPHPとCentOSの5.3

を実行しています:

Fatal error: Class 'PDO' not found in ... 

私はphpinfo();を実行し、「PDO」はページ上に存在する唯一の場所はです"Configure Command" '--disable-pdo'行を入力します。

私は#yum install php-pdoを試しましたが、パッケージは存在しません。

私も#pecl install pdoを試みたと私は最後にこれらのエラーを取得:

/root/tmp/pear/PDO/pdo_dbh.c: In function 'pdo_stmt_instantiate': 
/root/tmp/pear/PDO/pdo_dbh.c:410: error: 'zval' has no member named 'refcount' 
/root/tmp/pear/PDO/pdo_dbh.c:411: error: 'zval' has no member named 'is_ref' 
/root/tmp/pear/PDO/pdo_dbh.c: In function 'pdo_stmt_construct': 
/root/tmp/pear/PDO/pdo_dbh.c:435: error: 'zend_fcall_info' has no member named 'object_pp' 
/root/tmp/pear/PDO/pdo_dbh.c:458: error: 'zend_fcall_info_cache' has no member named 'object_pp' 
/root/tmp/pear/PDO/pdo_dbh.c: In function 'zim_PDO_setAttribute': 
/root/tmp/pear/PDO/pdo_dbh.c:752: error: 'zval' has no member named 'refcount' 
/root/tmp/pear/PDO/pdo_dbh.c: In function 'zim_PDO_getAttribute': 
/root/tmp/pear/PDO/pdo_dbh.c:818: error: 'zval' has no member named 'refcount' 
/root/tmp/pear/PDO/pdo_dbh.c: In function 'pdo_hash_methods': 
/root/tmp/pear/PDO/pdo_dbh.c:1122: warning: assignment discards qualifiers from pointer target type 
/root/tmp/pear/PDO/pdo_dbh.c:1126: warning: assignment discards qualifiers from pointer target type 
make: *** [pdo_dbh.lo] Error 1 
ERROR: `make' failed 

そして、php.netのドキュメント上では基本的にパッケージはPHP 5.1以降、PHPのインストールに標準装備されていますと言います。

php.iniにextension=pdo.so行を追加してApacheを再起動しても問題は解決しません。助言がありますか?

+0

'php-pdo'はCentOSのパッケージの正しい名前です。 'yum search php-pdo'を実行すると表示されますか? –

+0

yum検索pdoのために得られる唯一の結果は、 "casenoupdown"パッケージの束です。私もyum clean allとyum updateを最近実行しました – chuckieDub

+0

多分これは私の問題ですhttp://serverfault.com/questions/511779/cant-install-php-pdo – chuckieDub

答えて

1

私も同様の問題がありました。私はcodeigniterを使用していて、 "pdo_mysql.so not found"エラーが発生していて、すべてを修正しようとしました。私は複数のクエリのためのGoogleの検索結果の最初の10ページを検索する必要があります。私は、同じ問題を抱えている人が何人いるのか見つけましたが、何らかの理由で誰も答えが出ませんでした。このすべての記事を読むと、「PDOとPDO_SQLITEドライバは、デフォルトでPHP 5.1.0で有効になっています。「これは私には思っています」おそらく私は拡張子= pdo_mysql.soとpdo.so私のphp.iniからの行! "私はphpがそれが今組み込まれて以来、もはや存在しなかった拡張をロードしようとしていると考えました。確かに、すべての私のPHPエラー混乱を解決した。

PHP 5.4.31 (cli) (built: Aug 19 2014 10:38:48)
Zend Engine v2.4.0, Copyright (c) 1998-2014 Zend Technologies
Server version: Apache/2.2.27 (Unix)
Server built: Aug 19 2014 10:33:30
Cpanel::Easy::Apache v3.26.5 rev9999

0

PHP_PDOパッケージが不足していることは間違いありません。怒鳴るのコマンドを実行してPDOパッケージを検索してみてください:

# rpm -qa| grep "pdo" 

鉱山はphp53u-PDO-5.3.26-1.ius.el5

示しあなたは、PHP 5.3を使用している場合は、

# yum install php53u-pdo 
を試してみてください
+2

grepの結果がなく、インストールがパッケージを見つけることができません。 – chuckieDub

0

回答が遅すぎるかどうかはわかりませんが、誰かがこのエラーを見つけた場合は投稿します。

まず、CentOS 7にyumを使ってphp-pdoをインストールしました。私はphpinfoを見て、pdo拡張子を表示しますが、pdo-mysqlは表示しません。

したがって、php-mysql(yum install php-mysql)をインストールすると、自動的にpdo-mysql拡張機能がインストールされます。

関連する問題