mysql_connectの注意点

PHP4系からMySQL4系以上(MySQL5系も含む)のDBに接続する際の問題
mysql_connectが暗号化したパスワードとMySQLで暗号化されたパスワードが一致しないため、そのままではMySQLから接続を拒否される。

対応方法
  • my.cnfの[mysqld]のところに"old-passwords"と追記
  • mysqldを再起動
  • grant文でパスワード付きの接続設定を追記する
    • すでに定義してある場合はset passwordのSQLで再設定する

これで接続できるようになる