- 締切済み
windowsからlinuxに移行php動作
他の質問サイトでも投稿しております。 現在、windowsサーバーからlinuxサーバーに移行しようとしています。 実際にlinux上でPDOを利用してDB接続を行いたいと思っていますが、 以下のようなエラーがでています。 ■エラー内容 PHP Fatal error: Uncaught exception 'PDOException' with message 'could not find driver' 上記のエラーメッセージの後にはphpのソースのエラー行(「PDO->__construct」のロジックでエラー)が出力されています。 PDOモジュールはインストール済です。(以下、php -mコマンド実施) [PHP Modules] ctype curl date filter gd gettext libxml mbstring mysql mysqli openssl pcre PDO Reflection session SimpleXML SPL standard zip zlib [Zend Modules] ■/usr/local/php/etc/extensions.iniの設定 ※「;」はコメント ;Unix Extensions extension=spl.so extension=simplexml.so extension=session.so ;extension=iconv.so ;extension=bcmath.so ;extension=bz2.so ;extension=calendar.so ;extension=chasen.so extension=ctype.so extension=curl.so ;extension=dba.so ;extension=dbase.so ;extension=dom.so ;extension=exif.so ;extension=ftp.so extension=gd.so extension=gettext.so ;extension=gmp.so ;extension=hash.so ;extension=imap.so ;extension=json.so ;extension=kakasi.so extension=mbstring.so ;extension=mcrypt.so ;extension=mhash.so extension=mysql.so extension=mysqli.so ;extension=namazu.so ;extension=oci8.so extension=openssl.so extension=pdo.so extension=pdo_mysql.so ;extension=pdo_oci.so ;extension=pdo_pgsql.so ;extension=pdo_sqlite.so ;extension=pgsql.so ;extension=posix.so ;extension=pspell.so ;extension=soap.so ;extension=sockets.so ;extension=sqlite.so ;extension=tokenizer.so ;extension=xml.so ;extension=xmlreader.so ;extension=xmlrpc.so ;extension=xmlwriter.so ;extension=xsl.so extension=zip.so extension=zlib.so ちなみにですが、php.iniの方は何か設定する必要があるのでしょうか? 大変申し訳ありませんが、 ご教授の方、宜しくお願い致します。
- みんなの回答 (4)
- 専門家の回答
みんなの回答
ご利用のレンタルサーバーの利用規約(変更の自由度等)がわからないためこれ以上の回答が残念ながらできません。 レンタルサーバー会社に問い合わせてください。 下記は知識として見てください。 1.Red Hat Enterprise Linux 4は商用OSですのでサポートは有償です。公開情報は少ないと思ってください。 2.Red Hat Enterprise Linux 4のパッケージ管理ソフトはyumではありません。
pdo_mysql.soをインストールする必要があります。 yumはパッケージソフトを管理するためのソフトです。 また >上記はつまりphpを1回アンインストールして >インストールしなおすということでしょうか と理解されるような回答をしていたのでしたら誤解です。 何度も書きますが。 pdo_mysql.soをインストール方法はPHPやMysqlをインストールした方法により違います。 インストール方法はPHPやMysqlをインストールした方法により違います。 どのようにしてLinuxやPHP、Mysqlをインストールしましたか? Linuxは何を使っていますか? Windowsサーバーからlinuxサーバーに移行方法は何かを参考にされましたか?
お礼
ご返答ありがとうございます。 情報足らずで大変申し訳ありません。 上記、ご回答いたします。 >どのようにしてLinuxやPHP、Mysqlをインストールしましたか? もうしわけありません。 現在、使用しているサーバーはレンタルサーバーでデフォルトでインストールされていましたので インストールの方法はわかりません。 >Linuxは何を使っていますか? 環境は サーバー:Red Hat Enterprise Linux 4 php:5 MySQL:5 >Windowsサーバーからlinuxサーバーに移行方法は何かを参考にされましたか? 「windows linux 移行」で検索したサイトを何個が見てみました。。。 以上、宜しくお願い致します。
PHPでMysqlを使えるようにする場合。 Windowsではどちらも実行ファイルで提供される為必要なDLLを用意すればよいのですが Linuxの場合インストール方法によて方法が違います。 1.ソースから コンパイル時に設定する 2.パッケージから 必要なものをパッケージからインストールする 内容からパッケージからだと思いますので たとえば yum だと yum install php-mysql です 確認は phpinfo()のPDO項目が PDO drivers mysql になっていればOKです。
お礼
すばやいご回答ありがとうございます!! 上記はつまりphpを1回アンインストールして インストールしなおすということでしょうか? ちなみに「yum」は何でしょうか? 以上、宜しくお願い致します。
使用するDBがPHPから使えないのが原因です phpinfo()のPDO項目を見てください。 利用するDBは表示されていますか? >extension=pdo_mysql.so Mysqlだとするとpdo_mysql.soファイルは存在しますか?
お礼
ご返信遅くなりまして申し訳ありません。 アドバイスありがとうございます! 下記ご回答いたします。 >phpinfo()のPDO項目を見てください。 >利用するDBは表示されていますか? 「PDO drivers」しか表示されていませんでした。 ここにMySQLが表示されてなくてはMySQLが使用できないということでしょうか? >>extension=pdo_mysql.so >Mysqlだとするとpdo_mysql.soファイルは存在しますか? 「pdo_mysql.so」のファイルがどこにあるのかがわからないのですが、 上記ファイルが作成されるディレクトリは決まっていますでしょうか? もし、「pdo_mysql.so」ファイルがなかった場合、 作成方法をご教授いただけないでしょうか? 申し訳ありませんが、宜しくお願い致します。
お礼
ご回答ありがとうございます。 >ご利用のレンタルサーバーの利用規約(変更の自由度等)がわからないためこれ以上の回答が >残念ながらできません。 変更は自由にできます。 上記の件、了解いたしました。 以上、宜しくお願い致します。