PHP5.3でMySQL接続エラー

この記事は約1分で読めます。
スポンサーリンク

mysqlが古い形式のパスワードを利用していると新しいPHPバージョンで動かないという事がある。
理由としては新しいPHPでは古い形式のパスワードを使えないからだ。
新しいパスワード形式に変更することでこちらは解消することが可能。

ユーザーのパスワードを新しいパスワード形式に力技で変更してみる。
詳しい説明は省きますが、なるだけ新しいmysqlで以下SQLを叩く。
SELECT PASSWORD(‘パスワード’);
長めの英数字が出力されるはずだ。
これで出力された暗号を古いほうで反映させる
SET PASSWORD FOR ユーザー名@’%’ = ‘出力された暗号’;
これで暗号化形式が新しい形式になるので新しいPHPでも接続できる。
あと古い方でも接続できる。

いまだにMysql5.0.〜を利用している人はあまりいないと思うが、古い環境ではよくありそうなシチュエーションだ

PHP5.3でMySQL接続エラー(old_passwords=1)
【環境】 接続元: PHP 5.3.20 (WebサーバA、新規) 接続先: MySQL 5.0.95 (MySQLサーバB、運用中) 【現象】 次のエラーが表示されてMySQLサーバに接続できない。 Warning (2): mysql_

コメント

タイトルとURLをコピーしました