web-dev-qa-db-ja.com

Redhatでmysqli拡張機能を有効にする方法は?

私のphp.iniは言う:

解析された追加の.iniファイル

    /etc/php53/php.d/curl.ini,   
 /etc/php53/php.d/fileinfo.ini, /etc/php53/php.d/json.ini, /etc/php53/php.d/mysqli.ini,
 /etc/php53/php.d/mysql.ini, /etc/php53/php.d/pdo_mysql.ini, /etc/php53/php.d/phar.ini, 
/etc/php53/php.d/Zip.ini

mysqli.iniがロードされます。しかし、それでも私はこれを取得します、

PHPの致命的なエラー:クラス 'mysqli'が見つかりません

  • 動的ロードを有効にして、phpスクリプトをdl( "mysqli.so");で初期化してみました
  • 私はまた、phpソースを再コンパイルしようとしました:

    ./configure --with-mysql=/usr/lib64/mysql --with-
    mysqli=/usr/lib64/mysql/mysql_config
    

これでもうまくいきませんでした。誰かが私の問題を解決するのを手伝ってくれますか?

  1. Red Hat Enterprise Linux Serverリリース5(Tikanga)。
  2. x86_64 GNU/Linux。
  3. RHNにアクセスできません。

ありがとう。

2
nuthan

Php5.5.xを使用している場合は、次のようにします。

$ Sudo yum install php55-mysqlnd

または:

$ yum install php[your version]-mysqli or mysql 

5.3より大きい場合:

$ yum install php[your version]-mysqlnd
5
Sabbir

だから... php -iとphpinfo()はこのモジュールを表示しませんか?

/etc/php53/php.d/mysqli.iniでextension = "mysqli.so"を確認してください。 "php -i | grep extension_dir"のような拡張ディレクトリを見つけてください。このモジュールの拡張パスを確認してください(例:ls -lha/usr/lib64/php/modules/mysqli.so)モジュールが存在する場合は、このmodに必要なすべてのライブラリを確認します(ldd /usr/lib64/php/modules/mysqli.so)モジュールが存在しない場合は、インストールします。 (私はあなたがphpをカスタムコンパイルしていると思うので、この拡張機能はphpソースのext/mysqliで見つけることができます。&& makeをインストールするか、インストール中にエラーが表示されます)また、欠落している、またはphp-iのstdoutにある互換性のないモジュール。

0
unlo