更新了mysql客戶端到5.6,服務端仍是5.1.
所以現在使用PHP連接mysql數據庫的時候會報錯:
Connection using old (pre-4.1.1) authentication protocol refused (client option 'secure_auth' enabled)
在網上查到說是新老密碼的問題.
另外一臺也是5.6的客戶端,連接SQL沒問題.
查看server端的密碼格式,發現正常的客戶端使用的密碼格式是32位加密.
報錯的密碼格式是16位.
所以試着添加一個32位加密的用戶,然後從報錯的客戶端連接,這時連接正常.
所以這時就把所有16位加密的密碼換成32位後,客戶端連接正常了.
由於在服務端添加用戶一直是16位密碼,所以找了臺高版本的mysql數據庫,在這個服務端生成32位加密的密碼:
select password('pass')
然後再把生成的密鑰粘貼進原16位密碼處.測試連接正常.