Sunday, February 13, 2005

MySQL 4.1 กับ PHP4

เมื่อ connect database บน MySQL4.1 โดย PHP4 จะเกิด error Client does not support authentication protocol requested by server; consider upgrading MySQL client สาเหตุเป็นเพราะว่าวิธีการ authentication ของ MySQL4.1 นั้นได้เปลี่ยนใหม่โดยที่ PHP4 ไม่ได้ทำเผื่อเอาไว้ เท่าที่ค้นดูมีวิธีแก้ไขอยู่สามแบบ
  • Upgrade ไปใช้ PHP5
  • ใช้ account ใน MySQL ที่ยังเก็บ password แบบเดิมอยู่
  • ใช้คำสั่ง OLE_PASSWORD ของ MySQL ในการเปลี่ยนให้ไปใช้วิธีการ authentication แบบเดิม
    mysql>SET PASSWORD FOR 'mynaliga'@'localhost' = OLD_PASSWORD('mynaligapass');

No comments: