作者marinne (乳瑪琳)
看板Web_Design
標題Re: [問題] mysql 的client programs是指?
時間Sun Feb 27 19:41:16 2005
※ 引述《Isiah (栗子)》之銘言:
: 就是我之前 想使用
: mysql_connect ('localhost', 'root' , 'password')
: 來連接我的php 和 mysql
: 但是我出了問題
: 現在我知道問題是出在哪 他指的問題是說
: 我的server 的版本是4.1.10 (反正就是4.1以上)
: 但是我的client programs 好像是 pre-4.1的
: 所以 在password的編碼上 4.1之後好像是用41 byte 但是4.1之前是16byte
: 所以才會出現問題
: 但是我現在的問題是 我想 upgrade我的client programs
: 但是其實我不知道client programs指的是什麼
: 能否幫幫我呢?
mysql 4.1開始使用不同的密碼編碼方式,除非你使用mysql 4.1.x原始碼
來編譯PHP的mysql模組,否則你的PHP程式在連結mysql 4.1.x伺服器的時候
就會出現你說的訊息。另一個方式是改用新的mysqli模組來與mysql 4.1.x
伺服器溝通。
如果以上兩種方式不可行,可以用OLD_PASSWORD()函數來將帳號的密碼
改為舊版本的型態。首先以root帳號登入mysql後,執行以下指令:
UPDATE mysql.user SET password = OLD_PASSWORD('new_password')
WHERE host = 'hostname' AND user = 'username';
FLUSH PRIVILEGES;
這樣可以將'username'這個帳號(對應的主機名稱為'hostname')的密碼
修改成'new_password',並且是使用舊的密碼雜湊方式(可以讓舊的
mysql用戶端連結)。
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 220.135.32.37