mysqliを実行できません。

解決済

回答 1

投稿 編集

  • 評価
  • クリップ 0
  • VIEW 4,150

WebDesigner

score 9

mysqliを実行したい

GCP(Google Cloud Platform)でWEBサーバを立ち上げたいと思い
以下のページを参考にGCEでサーバ(centos7)を立ち上げ、ApacheとPHP5.6をインストールしました。
http://weblabo.oscasierra.net/centos7-php56-install/

GCPのSQLでデータベースを作成し、いざPHPからDBに接続しようとしたら以下のようなエラーが発生してしまいました。

mysqliを利用できるような設定はどのようにして行えばよいのでしょうか?

そもそもPHP5.6でもmysqliを利用する場合このようにPHPとは別にモジュールをインストールしてあげなければならないのでしょうか?

エラーメッセージ

Fatal error: Class 'mysqli' not found in /var/www/html/lib/init.php on line 9

mysqliが使えませんでした…

試したこと

ググってみると以下のページでmysqliを有効にする方法があったのですが、php_mysqli.dllが見つかりませんでした。
http://php-mysql-ref.com/page/fatal-error-class-mysqli-not-found.html

$ sudo find / -name "php_mysqli.dll"
$ sudo find / -name "*.dll"

mysqliのインストール方法が書かれていたのでこちらを実行してみたのですが駄目でした。
http://qiita.com/sango/items/a86f9b8cf8c9c641823a

$ sudo yum -y install php-mysqli
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
 * base: mirror.cisp.com
 * epel: mirror.steadfast.net
 * extras: mirror.eboundhost.com
 * remi-safe: mirrors.mediatemple.net
 * updates: mirror.tzulo.com
Resolving Dependencies
--> Running transaction check
---> Package php-mysql.x86_64 0:5.4.16-36.1.el7_2.1 will be installed
--> Processing Dependency: php-pdo(x86-64) = 5.4.16-36.1.el7_2.1 for package: php-mysql-5.4.16-36.1.el7_2.1.x86_64
--> Running transaction check
---> Package php-pdo.x86_64 0:5.4.16-36.1.el7_2.1 will be installed
--> Processing Dependency: php-common(x86-64) = 5.4.16-36.1.el7_2.1 for package: php-pdo-5.4.16-36.1.el7_2.1.x86_64
--> Finished Dependency Resolution
Error: Package: php-pdo-5.4.16-36.1.el7_2.1.x86_64 (updates)
           Requires: php-common(x86-64) = 5.4.16-36.1.el7_2.1
           Installed: php-common-5.6.23-1.el7.remi.x86_64 (@remi-php56)
               php-common(x86-64) = 5.6.23-1.el7.remi
           Available: php-common-5.4.16-36.el7_1.x86_64 (base)
               php-common(x86-64) = 5.4.16-36.el7_1
           Available: php-common-5.4.16-36.1.el7_2.1.x86_64 (updates)
               php-common(x86-64) = 5.4.16-36.1.el7_2.1
 You could try using --skip-broken to work around the problem
 You could try running: rpm -Va --nofiles --nodigest

最後に

今までは安いレンタルサーバーを借りてFTPでファイルを上げることしかしなかったのでサーバについての知識はかなり乏しいのですが、どなたかご教授お願い致します。

追記

sudo yum -y --enablerepo=remi install php-mysql
を実行してみたのですが状況に変化がありませんでした。

$ sudo yum -y --enablerepo=remi install php-mysql
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
 * base: mirror.cisp.com
 * epel: mirror.steadfast.net
 * extras: mirror.eboundhost.com
 * remi: mirrors.mediatemple.net
 * remi-safe: mirrors.mediatemple.net
 * updates: mirror.tzulo.com
Resolving Dependencies
--> Running transaction check
---> Package php-mysql.x86_64 0:5.4.45-10.el7.remi will be installed
--> Processing Dependency: php-pdo(x86-64) = 5.4.45-10.el7.remi for package: php-mysql-5.4.45-10.el7.remi.x86_64
--> Running transaction check
---> Package php-pdo.x86_64 0:5.4.45-10.el7.remi will be installed
--> Processing Dependency: php-common(x86-64) = 5.4.45-10.el7.remi for package: php-pdo-5.4.45-10.el7.remi.x86_64
--> Finished Dependency Resolution
Error: Package: php-pdo-5.4.45-10.el7.remi.x86_64 (remi)
           Requires: php-common(x86-64) = 5.4.45-10.el7.remi
           Installed: php-common-5.6.23-1.el7.remi.x86_64 (@remi-php56)
               php-common(x86-64) = 5.6.23-1.el7.remi
           Available: php-common-5.4.16-36.el7_1.x86_64 (base)
               php-common(x86-64) = 5.4.16-36.el7_1
           Available: php-common-5.4.16-36.1.el7_2.1.x86_64 (updates)
               php-common(x86-64) = 5.4.16-36.1.el7_2.1
           Available: php-common-5.4.45-9.el7.remi.x86_64 (remi)
               php-common(x86-64) = 5.4.45-9.el7.remi
           Available: php-common-5.4.45-10.el7.remi.x86_64 (remi)
               php-common(x86-64) = 5.4.45-10.el7.remi
 You could try using --skip-broken to work around the problem
 You could try running: rpm -Va --nofiles --nodigest
  • 気になる質問をクリップする

    クリップした質問は、後からいつでもマイページで確認できます。

    またクリップした質問に回答があった際、通知やメールを受け取ることができます。

    クリップを取り消します

  • 良い質問の評価を上げる

    以下のような質問は評価を上げましょう

    • 質問内容が明確
    • 自分も答えを知りたい
    • 質問者以外のユーザにも役立つ

    評価が高い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

    質問の評価を上げたことを取り消します

  • 評価を下げられる数の上限に達しました

    評価を下げることができません

    • 1日5回まで評価を下げられます
    • 1日に1ユーザに対して2回まで評価を下げられます

    質問の評価を下げる

    teratailでは下記のような質問を「具体的に困っていることがない質問」、「サイトポリシーに違反する質問」と定義し、推奨していません。

    • プログラミングに関係のない質問
    • やってほしいことだけを記載した丸投げの質問
    • 問題・課題が含まれていない質問
    • 意図的に内容が抹消された質問
    • 広告と受け取られるような投稿

    評価が下がると、TOPページの「アクティブ」「注目」タブのフィードに表示されにくくなります。

    質問の評価を下げたことを取り消します

    この機能は開放されていません

    評価を下げる条件を満たしてません

    評価を下げる理由を選択してください

    詳細な説明はこちら

    上記に当てはまらず、質問内容が明確になっていない質問には「情報の追加・修正依頼」機能からコメントをしてください。

    質問の評価を下げる機能の利用条件

    この機能を利用するためには、以下の事項を行う必要があります。

回答 1

checkベストアンサー

+1

$ sudo yum -y --enablerepo=remi,remi-php56 install php-mysql

投稿

編集

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

  • 2016/07/05 23:09

    早速回答していただきありがとうございます!

    実行してみたのですが、mysqliを実行できませんでした・・・
    ちなみにphp -mでモジュールも確認してみたのですが、mysqliが検出されませんでした。
    せっかくご回答頂いたのにすみません。

    キャンセル

  • 2016/07/05 23:10

    回答修正しました。

    キャンセル

  • 2016/07/05 23:32

    ありがとうございました!
    無事インストールできました!

    リポジトリの意味などももっと勉強したいと思います。


    キャンセル

15分調べてもわからないことは、teratailで質問しよう!

  • ただいまの回答率 90.22%
  • 質問をまとめることで、思考を整理して素早く解決
  • テンプレート機能で、簡単に質問をまとめられる